多个用户在同一模型中设计

时间:2015-02-24 01:22:22

标签: ruby-on-rails ruby-on-rails-4 devise

我有一个问题,我需要用设计创建3种类型的用户。这些用户有不同的领域。我想过创建一个表但是会有很多空白字段。

任何建议?我很困惑。我需要一个教程:)

谢谢朋友们。

2 个答案:

答案 0 :(得分:1)

您正在寻找一种名为Single Table Inheritance的东西。基本上你用devise创建一个用户模型,它有一个字符串“type”,它是一个字符串,你可以创建子模型,比如

class Admin < User end

Class CMS < User
end

等...

此外,将所有常用属性放在用户模型中

请查看这些链接以获得深入的解释。 STI是解决方案。确实如此

http://samurails.com/tutorial/single-table-inheritance-with-rails-4-part-1/

devise and multiple "user" models

Unique IDs between Users and Admins with Devise Rails

Rails 4 Devise Multiple User Models STI

Stackoverflow ppl已经广泛处理了STI!

希望这些有帮助!

答案 1 :(得分:1)

使用STI机制...... 或者您可以使用设计分隔所有表格