在 rails 5.0 中使用扩展模型?

Working with extended models in rails 5.0?

主题:

我在一个 rails 应用程序中工作,我将一个名为 profile 的现有模型扩展为两个名为 personorganization 的模型。我只想在使用 Organization.all 时获取组织,仅在调用 Person.all.

时获取人员

问题:

但是当我使用Organization.allPerson.all时,它returns所有记录都没有删除人员表格Organization.all和组织表格Person.all

您要找的是单一Table继承。您希望 Profile 成为 PersonOrganisation 的基础 class,因此 class Person < Profile

然后您希望迁移以将类型字段添加到配置文件

add_column :profiles, :type, :string, reference: true

然后你只需调用 Person.all 获取所有人员,然后调用 Organisation.all 获取所有组织。

https://samurails.com/tutorial/single-table-inheritance-with-rails-4-part-1/如果遇到比较麻烦的可以参考