如果这个问题以不同的方式被问到其他地方,请道歉,但我不能100%肯定如何说出来。
我正在处理其他人创建的代码。他们在Rails中创建了一个名为" Contact" (如公司的联系方式)并使用枚举创建4种不同类型的联系人 - 账单,材料,主要和其他。
class Contact < ActiveRecord::Base
...
enum contact_type_id: [:Billing, :Materials, :Primary, :Other]
...
end
我需要创建一个名为&#34; SalesOrder&#34;每条记录有3个联系人。一个主要联系人,一个结算联系人和一个材料联系人。每种联系人只能使用一个销售订单。使用多对多关系似乎不会起作用。
我尝试这样做的方法是创建三个连接表:contact_sales_order_primary,contact_sales_order_billing和contact_sales_order_material。这样,SalesOrder模型可以为每个表使用has_one,而Contact模型可以对表使用has_many。
这就是我一直在尝试的,但我无法让它发挥作用(我也研究过STI和多态关联,但那些看起来并不完全适合账单)。我无法判断:
当然,我可以提供您可能需要的任何其他详细信息以帮助解答。非常感谢任何帮助或建议。