我正在使用before_action
过滤器来调用authenticate
,如果用户无权访问所请求的网页,则会将用户重定向回主页。
我想从此步骤中排除某个页面,仅用于测试目的。
到目前为止,我所看到的是,我可以使用except
将某些控制器操作排除在before_action
过滤器之外,如下所示:
before_action :authenticate, except: :demo_login
我也可以一次排除多个动作:
before_action :authenticate, except [:demo_login, :demo_show]
答案 0 :(得分:29)
在相关控制器中使用skip_before_action :authenticate
。
此方法的格式与before_action
相同,因此,如果您要跳过针对特定控制器操作调用:authenticate
,请使用:
skip_before_action :authenticate, only: [:show, :index]
也可以使用except:
关键字。