我正在使用before_action
过滤器来调用authenticate
,这是一种方法,如果未授权用户位于所请求的页面上,该方法将将用户重定向回其首页。
我想从此步骤中排除页面,仅出于测试目的。
到目前为止,我所看到的是我可以使用except
从before_action
过滤器中排除某些 Controller Action ,例如:
before_action :authenticate, except: :demo_login
我也可以一次排除多个 Action :
before_action :authenticate, except [:demo_login, :demo_show]
如何排除特定 Controller 中的所有 Action ?
最佳答案
在相关 Controller 中使用skip_before_action :authenticate
。
此方法的格式与before_action
相同,因此,如果要跳过针对特定 Controller 操作的:authenticate
调用,请使用:skip_before_action :authenticate, only: [:show, :index]
也可以使用except:
关键字。
关于ruby-on-rails - 从before_action中排除 Controller ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36878355/