1

我已经设置了 authlogic 并想使用 declarative_authorization。在 Ryan Bates 的 railcast #188 中,他使用 before_filter {|c| Authorization.current_user = c.current_user} If I do the same I get a error:

`private method 'current_user' called for #<UsersController:0xa6025e8>`

current_user 方法在应用程序控制器中并且是私有的(如在 Authlogic 设置示例中),如果我将其设为公开,则此方法有效。如果我只是说 current_user (current_user 方法也是一个助手)而不是之前过滤器块中的 c.current_user ,它也可以工作。

那么如果我这样做真的可以before_filter {Authorization.current_user = current_user}吗?

4

1 回答 1

1

尝试这个:

application_controller.rb

添加before_filter :set_current_user

将此方法放入受保护的

def set_current_user
  Authorization.current_user = current_user 
end
于 2011-11-29T09:33:44.877 回答