所以,我在 Controller 中有这段代码:
before_filter :require_login, :only => :new, :edit, :destroy
我的 Controller 有这些方法:index、new、edit、create、update、show、destroy。 我想做的是用 login_required(代码中的:require_login)保护方法:new,edit,destroy, 但是上面的代码不起作用,如果我有,我可以保护一种方法,例如:
before_filter :require_login, :only => :new
可是我要保护他们三个,怎么办?
最佳答案
only
选项的值周围缺少方括号:
before_filter :require_login, :only => [:new, :edit, :destroy]
它不起作用,因为 Ruby 解释器不知道 only 的选项从哪里开始,before_filter
的参数从哪里继续。在这种情况下,您需要明确容器。
关于ruby-on-rails - rails : How to use a before_filter to protect multiple methods,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11025319/