是否建议使用Single Table Inheritance over Users表?

时间:2012-09-26 00:18:50

标签: ruby-on-rails ruby ruby-on-rails-3

对于我当前的项目,我试图首先为应用程序设计数据库模式。但是,我无法决定是否在我的应用程序的用户模型上使用Single Table Inheritence

用户可以是:所有者,居民或管理员,由于他们共享具有不同功能的相同属性,我认为STI适用于此处。我是否朝着正确的方向前进?如果没有,请建议更好的替代方案。多态关联适合这里吗?请注意,身份验证和访问控制是通常用于用户的。

此致

1 个答案:

答案 0 :(得分:1)

我相信你是对的 - 在这种情况下,STI是合适的。由于身份验证是针对用户的,因此它可以为您提供更简单的解决方案。此外,由于它们也共享属性,我会说STI超过多态关联 - 唯一不同的是用户的类型,它处理。