rails app具有多种类型的用户

时间:2012-12-03 18:40:03

标签: ruby-on-rails-3 design-patterns database-design web-applications

我正在使用许多类型的用户使用ruby on rails应用程序。所有用户将共享电子邮件地址和密码的基本属性,以及created_at和updated_at的时间戳字段。其他字段对于用户类型(想想员工,供应商,经理等)是唯一的。我一直在研究单表继承,但这似乎不是正确的模式。另一个选择似乎是拥有一个其他模型的用户模型。用户也可以有多种类型,即。员工和经理可以是同一个用户。我还想根据用户的用户类型将用户定向到登录的特定页面。这最好通过路由器中的约束或登录时的大型switch语句来完成吗?

1 个答案:

答案 0 :(得分:0)

您可能需要定义用户角色。我建议CanCan来管理您的角色和访问权限。

在单个表上实现不同字段的一种方法是使用Postgres的NoSQL(hstore)。这是一个简单的introductory tutorial

Here是与Rails 3.2 +

一起使用的例子