嗨,我是非常新的活跃记录,我不知道如何建立这种关系。
我有模型orders
和模型addresses
订单可以有多个shipping_addresses,也可以包含许多invoice_addresses
我该如何建立这种关系?我的意思是invoice_addresses和shipping_addresses基本相同,但我需要将它们与订单分开
order.shipping_addresses
order.invoice_addresses
我不想创建更多模型,我只需要知道如何仅使用order
和address
模型设置此关系
感谢您的帮助
答案 0 :(得分:2)
您可以将多个has_many
定义到同一个类,如下所示:
# app/models/order.rb
class Order < ActiveRecord::Base
has_many :shipping_addresses, class_name: 'Address'
has_many :invoice_addresses, class_name: 'Address'
...
end
如果您想为这些关联添加条件,请参阅Active Record Associations了解详细信息。