我想知道如何在许多关系中添加额外的属性。我有两种模式,有很多种关系,公司和职业。
许多专业人士可能属于一家公司
因此,我的公司模型如下所示
class Company < ActiveRecord::Base
has_and_belongs_to_many :professions
end同一行业的同一人也可能属于多家公司。
class Profession < ActiveRecord::Base
has_and_belongs_to_many :companies
end现在,我需要联系一个小时工资,这可能是不同的每一个公司,为同一行业。我不太清楚在哪里引入每小时收费的属性?即使我要将其添加到联接表中,如何使用活动记录访问该速率?
发布于 2013-11-26 15:30:37
这是一个典型的场景,您可以通过over选择has_many。通常,如果您只需要关联两个模型,则不需要将其他信息存储在关联中,请使用habtm。在大多数情况下,您必须使用has_many通过。你的案子属于这种情况。
您希望在关联Profession和Company的表中保存小时费率。如果您有要迁移的现有数据,您可能需要查看这个post many through?。如果您可以删除用于habtm关联的联接表,只需删除它并创建一个新表即可。
https://stackoverflow.com/questions/20221074
复制相似问题