authlogicとcancanを組み合わせて使用しているRailsアプリがあります。
アプリでチェックするとcurrent_user
、いつもundefined variable or method 'current_user'
current_user
を使用すると、UserSessionsコントローラーから表示を取得できます
def create @user_session = UserSession.new(params [:user_session]) @user_session.saveの場合 return render:json => current_user 終わり 終わり
ただし、Home Controllerの場合は、
defインデックス return render:json => current_user 終わり
undefined
エラーが発生します。
私のアプリケーションヘルパーには、
クラスApplicationController<ActionController:: Base secure_from_forgery helper_method:current_user プライベート def current_user_session 定義されている場合は@current_user_sessionを返しますか?(@ current_user_session) @current_user_session = UserSession.find 終わり def current_user 定義されている場合は@current_userを返しますか?(@ current_user) @current_user = current_user_session && current_user_session.record 終わり 終わり
そのため、セッションが作成されているように見えますが、railsはそれを再び見つけることができません。誰かがそれがなぜであるかについていくつかの光を当てることができますか?
Ryan Batesのチュートリアルと他のいくつかのチュートリアルを実行しましたが、すべて同じように見えます。