简单的方法让管理员只管理用户

问题描述 投票:0回答:1

我只需要让admin用户创建和编辑所有用户。我正在使用Devise(但如果需要我可以更改gem),我尝试了很多来自stackoverflow和web的建议。我无法获得任何这些示例/建议。

有一个简单的方法来拥有和管理面板只有管理员可以创建和编辑用户,而所有“简单”用户可以管理应用程序的其余部分(身份验证后)?

我正在使用RAILS 5如果我需要提供更多信息,请告诉我。

谢谢

authentication ruby-on-rails-5
1个回答
1
投票

您可以使用RolifyCanCanCan gems来定义用户的角色和能力。并指定只有角色admin才能修改记录,而其他角色只能读取记录。

if user.has_role? :admin
  can :manage, :all
else
  can :read, :all
end

本教程详细介绍了https://github.com/RolifyCommunity/rolify/wiki/Devise---CanCanCan---rolify-Tutorial

© www.soinside.com 2019 - 2024. All rights reserved.