使用Devise with Rails 3.添加多个角色?

时间:2010-10-05 12:11:09

标签: ruby-on-rails authentication rubygems ruby-on-rails-3 devise

我们在Rails 3应用程序中使用devise gem进行身份验证。我们有多个角色,从设计的角度来看,角色在确认,激活和记住我的功能方面会有所不同。

设计文档中包含两个范围的示例。一个是用户本身,另一个是管理员角色。

我可以有这样的东西吗?我会创建一个用户模型。然后我会创建3个角色:

  • 基于role1
  • role2所
  • 管理

设计支持吗?有人试过这个吗?

3 个答案:

答案 0 :(得分:34)

CanCan是目前用于ruby角色的最佳解决方案,我建议您查看Tony's Usage of Devise/CanCan以创建基于角色的系统。我花了一点时间才弄清楚如何解决这个问题,但现在它对我来说很有意义。

答案 1 :(得分:3)

Devise是一个身份验证插件,您要寻找的是授权解决方案。这些是完全不同的主题。请查看http://github.com/ryanb/cancan

上的示例

答案 2 :(得分:0)

您可以添加角色字段来设计用户添加角色,然后不需要使用cancan 你可以从下面的git中获得参考 https://github.com/pervez8ktt/add-role-to-devise