无法使用cancan在rails 3.1上工作

时间:2011-10-26 04:56:24

标签: ruby-on-rails ruby-on-rails-3 cancan

我使用Rails进行了两个月的休息,现在当我回来时它就咬我了!

我正在尝试让CanCan在Rails 3.1上工作,并查看了railscast,然后按照他们在cancan git页面上的说明进行操作。但是,当我尝试运行主页时,它给出了以下错误:

Routing Error

undefined local variable or method `authorize_resource' for StaticController:Class

如何停止此操作?它似乎没有加载cancan,但我已经使用bundler安装它,并没有提到我必须做任何其他事情来包含它。

有人有什么想法吗?

1 个答案:

答案 0 :(得分:1)

抱歉我的坏!太多的咖啡导致我没有阅读有关如何安装它的所有说明。

我需要将以下内容添加到我的ApplicationController:

  def current_ability
    @current_ability ||= Ability.new(current_user)
  end

然后我需要使用

class StaticController < ApplicationController
  authorize_resource :class => false

因为在这个特殊的例子中,它只是一个静态的简单主页,位于更复杂的网络应用程序的前面。

感谢您的帮助。