加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails-3 – 将ActiveAdmin用户与现有用户模型合并

发布时间:2020-12-16 23:03:46 所属栏目:百科 来源:网络整理
导读:我在我的项目早期设置了ActiveAdmin,并使用默认的admin_users模型进行身份验证.我已经使用Devise设置了一个单独的用户模型,并且意识到合并这两个表可能会更加明智,这样管理员可以在Activeadmin和站点的前端都有管理操作.如何将ActiveAdmin配置为使用用户模型
我在我的项目早期设置了ActiveAdmin,并使用默认的admin_users模型进行身份验证.我已经使用Devise设置了一个单独的用户模型,并且意识到合并这两个表可能会更加明智,这样管理员可以在Activeadmin和站点的前端都有管理操作.如何将ActiveAdmin配置为使用用户模型(可能有一列)标记管理员(例如,is_admin或事件权限级别以使管理员和版主)?
Rails 3.1
ActiveAdmin 0.3.3
Devise 1.4.9

解决方法

有关如何使用activeadmin的现有“用户”模型的快速代码块,答案其实很简单.在ApplicationController中:
class ApplicationController < ActionController::Base
    def authenticate_admin_user! #use predefined method name
      redirect_to '/' and return if user_signed_in? && !current_user.is_admin? 
      authenticate_user! 
    end 
    def current_admin_user #use predefined method name
      return nil if user_signed_in? && !current_user.is_admin? 
      current_user 
    end 
end

并且只需使用Devise已经设置的身份验证. redirect_to是您要发送登录用户,不具有管理权限的用户.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读