セッションが初期化されないように、過去 4 日間、何が起こったのかを理解しようとしてきました。
私のアプリは問題なく動作していましたが、ある日突然エラーが発生し始めました
< StaticPagesController:0x7c84728 > の未定義のローカル変数またはメソッド「セッション」
request_forgery_protection.rb
私はそれをデバッグし、ファイルの下に追跡しましたaction_controller\metal
。
def form_authenticity_token
session[:_csrf_token] ||= SecureRandom.base64(32)
end
どうやら、セッションがロードされていませんでした。
次に、 How force that session is loaded?からの提案を試しました。、以下に示すように。
def root
if signed_in?
...
else
session[:init] = true
session[:init]
@prospect = Prospect.new()
render 'retailers/retailers_home'
end
end
それでも同じエラーが表示され続けます。
私の初期化子である session_store.rb の下では、すべて問題ないようです。
RecibosOnline::Application.config.session_store :cookie_store, key: '_RecibosOnline_session'
この正確なコードは、他のサーバーだけでなく、他の開発者のマシンでも機能するためです。これは私のマシンに固有のものでなければなりません...しかし、なぜですか??
何が原因でしょうか?