我在我的Rails应用程序中安装了Pundit gem,并仔细遵循了README中的说明。
然而,当我在任何一个控制器中使用'authorize'时,都会出现错误信息“undefined method 'authorize' for”。
另外,在视图中尝试使用“policy”时,会出现“undefined method 'policy'”错误。
好像根本没有安装Pundit!
我已经在我的Application Controller中包含了Pundit。
我有一个包含所有策略的ApplicationPolicy文件,然后是每种类型记录的策略文件,这些文件都继承自Application Policy。
由于某些原因,我无法将我的代码粘贴到此问题中,所以希望我提供了足够的信息!
非常感谢您的想法。
然而,当我在任何一个控制器中使用'authorize'时,都会出现错误信息“undefined method 'authorize' for”。
另外,在视图中尝试使用“policy”时,会出现“undefined method 'policy'”错误。
好像根本没有安装Pundit!
我已经在我的Application Controller中包含了Pundit。
我有一个包含所有策略的ApplicationPolicy文件,然后是每种类型记录的策略文件,这些文件都继承自Application Policy。
由于某些原因,我无法将我的代码粘贴到此问题中,所以希望我提供了足够的信息!
非常感谢您的想法。
include Pundit
吗?同时,您的控制器是否继承自ApplicationController
?" - nikkon226authorize
的方法,与Pundit发生冲突。在我的应用控制器中,我有这个alias_method :require_login, :authorize
,下一行是我的include Pundit
。此外,请确保在模型实例上调用authorize
(即authorize @my_var
)。 - craig.kaminskyrequire 'pundit'
。 - Gregor