Rails:RailsAdmin :: MainController#dashboard中的NoMethodError

时间:2015-06-09 15:34:13

标签: ruby-on-rails

我使用下面的代码设置授权并出错。我正在使用设计

undefined method `is_admin?' for #<User:0x007f803734ba48>

我已经在控制台中设置了管理员用户,但我在测试用户尝试登录时遇到了问题。

    RailsAdmin.config do |config|
      config.authorize_with do
        redirect_to main_app.root_path unless warden.user.is_admin?
      end
    end

https://github.com/sferik/rails_admin/wiki/Authorization

2 个答案:

答案 0 :(得分:1)

你在使用Warden吗?在同一页面上,我发现了一些custom authorization。你试过了吗?

答案 1 :(得分:1)

这对我有用:    在users表中包含一个布尔字段并将其命名为admin

然后使用:

RailsAdmin.config do |config|
  config.authenticate_with do
    warden.authenticate! scope: :user
  end
  config.current_user_method(&:current_user)

  config.authorize_with do
    redirect_to main_app.root_path unless current_user.admin == true
  end
end