cancan - “可以:管理,全部”。我无法使用devise访问rails 3应用程序中的所有内容

时间:2011-08-10 23:22:18

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

我在应用程序控制器中使用“检查授权”,因此每个操作都需要权限。我开始给我,superadmin:=],管理所有权限。我认为管理所有会让我访问整个应用程序而无需命名资源。

用户模型:

  def role?(role)
    roles.include? role.to_s
  end

应用程序控制器:

check_authorization

康康的能力模型:

  def initialize(user)
    if user.role? :superadmin
      can :manage, :all
    end
  end

错误消息:

This action failed the check_authorization because it does not authorize_resource. Add skip_authorization_check to bypass this check.

谢谢。

1 个答案:

答案 0 :(得分:4)

据我所知,您需要在控制器中调用authorize_resource作为前置过滤器,以便这样做。