Так что я отмечаю это как вики сообщества, поскольку решение тривиально.
Я вызывал отладчик (который я проверял current_user
со следующим кодом
class ApplicationController < ActionController::Base
protect_from_forgery
debugger
filter {|c| Authorization.current_user = c.current_user}
end
Rails делает объекты сеанса и запроса доступными для экземпляров контроллеров. Этот отладчик вызывается в контексте self == ApplicationController
, когда он должен быть self == #<MainController...>
.
Короче говоря, убедитесь, что вы не пытаетесь вызвать его внутри контроллера определение , но внутри контроллера экземпляр .