我有一个User模型,一个Listing模型和一个Order模型。用户可以下订单或发布其他人可以下订单的列表。因此,用户既可以是客户也可以是供应商。
我的订单模型有listing_id,from_id和to_id。
我的问题是,如何在这些模型之间建立关联?我阅读了关于关联的rails指南,但是那个例子涉及单独的客户和供应商模型。
答案 0 :(得分:1)
class User < ActiveRecord::Base
has_many :listings, :foreign_key => :supplier_id, :inverse_of => :supplier
has_many :orders, :foreign_key => :customer_id, :inverse_of => :customer
end
class Listing < ActiveRecord::Base
belongs_to :supplier, :class_name => 'User'
belongs_to :order
end
class Order < ActiveRecord::Base
belongs_to :customer, :class_name => 'User'
has_many :listings
end