如何使用devise为具有admin_admin的admin属性的用户进行身份验证

时间:2016-09-21 14:15:15

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

我对rails上的ruby相当新。我已经建立了一个mysql数据库,用rails应用程序连接它,安装了devise gem和rails_admin gem。到目前为止一切顺利,一切正常。现在,我还向users表添加了usergroup属性,以标识不同的用户组。只有" admin"应该被允许访问rails admin。我已经在/app/config/initializers/rails_admin.rb

中使用了预定义的命令
   RailsAdmin.config do |config|

  ### Popular gems integration

  ## == Devise ==
   config.authenticate_with do
     warden.authenticate! scope: :admin
   end
   config.current_user_method(&:current_user)

  ## == Cancan ==
  # config.authorize_with :cancan

  ## == Pundit ==
  # config.authorize_with :pundit

  ## == PaperTrail ==
  # config.audit_with :paper_trail, 'User', 'PaperTrail::Version' # PaperTrail >= 3.0.0

  ### More at https://github.com/sferik/rails_admin/wiki/Base-configuration

  ## == Gravatar integration ==
  ## To disable Gravatar integration in Navigation Bar set to false
  # config.show_gravatar true

  config.actions do
    dashboard                     # mandatory
    index                         # mandatory
    new
    export
    bulk_delete
    show
    edit
    delete
    show_in_app

    ## With an audit adapter, you can add:
    # history_index
    # history_show
  end
end

到目前为止,您必须先登录才能访问该页面。现在还必须检查一下current_user.usergroup =' admin'。

在设计中,这也被解释为一种可能的方法来处理'用户组。 https://github.com/plataformatec/devise/wiki/How-To:-Add-an-Admin-Role

但是我很困惑如何将这个检查插入到配置中。

0 个答案:

没有答案