我正在按照我的站点http://tutorials.jumpstartlab.com/projects/blogger.html#i4:-a-few-gems上的说明设置我的第一个Rails应用程序。在articles_controller中,需要进行身份验证才能进行新建,创建,编辑,更新和销毁。我们将弄清楚如何使用:only
或:except
编写before_action。
尽管我尝试使用两者;使用:except
时出现错误,但:only
则没有错误。但是我还是不明白区别。
答案 0 :(得分:1)
当条件为false时,Except运行before操作。仅当条件为true时才运行before过滤器。
class Foo
before_action :log_not_signed_in, except: :signed_in?
before_action :log_signed_in, only: :signed_in?
end
如果未登录,则将对每个操作运行log_not_signed_in
方法;如果未登录,则将运行log_signed_in
方法。
希望这会有所帮助。