我正在使用Devise在Rails上构建服务,这需要“管理员”用户将常规用户添加到他们的组织帐户。 Devise的默认行为不支持此功能,因为当登录的管理员用户尝试创建常规用户帐户时,将调用':require_no_authentication'方法。
实现我正在寻找的功能的推荐方法是什么?
如果可能有另一个更好的用户认证宝石更适合我的需求,我很乐意看看切换到那个。
答案 0 :(得分:4)
这似乎更像是授权问题,而不是身份验证问题。您可以使用授权gem(例如cancan)为用户(例如admin)分配角色,并为这些角色授予权限。这与Devise一起非常有效。这是一个教程:
编辑:我想我可能误解了你的问题。也许你需要的只是另一个控制器来处理Devise控制器之外的用户创建。您可以使用cancan将对此控制器的访问限制为仅限管理员。