未定义的方法'授权'与Pundit

时间:2014-12-01 20:57:23

标签: ruby-on-rails pundit

我在我的Rails应用程序中安装了宝石Pundit,并仔细按照自述文件中的说明进行操作。

但是,当我在任何控制器中使用授权时,我收到错误消息“未定义方法'授权'。

此外,当我尝试在视图中使用“policy”时,我收到错误“undefined method'policy'”。

好像没有安装Pundit!

我已将Pundit包含在我的应用程序控制器中。

我有一个包含所有策略的ApplicationPolicy文件,然后是从应用程序策略继承的每种记录类型的策略文件。

出于某种原因,我不能将任何代码粘贴到这个问题中,所以我希望我已经包含了足够的信息!

我很感激任何想法。

2 个答案:

答案 0 :(得分:3)

我最近使用过专家,它就像一个魅力。 您的错误消息让我推断您没有运行安装 rails g pundit:install 或您的策略文件不在正确的目录中。

或者如果是,那么只需重新启动服务器即可解决此问题。希望。

答案 1 :(得分:0)

您需要使用 pundit:install generator 为您的应用生成默认策略文件。

rails g pundit:install
  create  app/policies/application_policy.rb