2012-12-23 66 views
0

我怎麼能得到application_controller內的session_id。我在此控制器中創建輔助方法來設置會話並稍後閱讀它們,並且可以從application_controller讀取所有會話變量,cookie等。唯一的例外是session_id在application_controller中。 Rails 3

會話[:SESSION_ID](變化試圖 - 會話[:ID],會話[ 「ID」],會話[ 「的session_id」] 和request.session_options [:ID])

但是這些都不提供session_id值。

在我的看法會議[:session_id]工作正常。但在應用程序控制器中,這只是不起作用。

任何幫助,將不勝感激。我顯然在這裏做錯了什麼。

回答

0

您忘記了密碼before_filter?這對我很有用。

class ApplicationController < ActionController::Base 
    protect_from_forgery 

    before_filter :catch_session_id 

    def catch_session_id 
    binding.pry 
    end 
end 

    14: def catch_session_id 
=> 15: binding.pry 
    16: end 

[1] pry(#<WelcomeController>)> session[:session_id] 
=> "a7eca9eaaf21cff74c0d21713fcaad09" 
+0

謝謝ck3g。但我以另一種方式實現了它。 – deepinder