我希望创建一个简单的关系模型,其中包含以下内容:
我有两个主要项目。 Product
/ WishList
他们之间的关系非常简单WishList
has_many :products
和Product
belongs_to_many :wishlists
我知道没有belongs_to_many
关联,这很简单,我似乎无法围绕正确的关系模式。
如果有人能提出一个很好的方法来实现这一点,那将非常感激。
感谢。
答案 0 :(得分:2)
您可以选择has_many :through和has_and_belong_to_many关系。
如果您需要将其他属性附加到将成为桥梁的模型(例如,如果您想订购心愿单的位置),则选择第一个,否则选择第二个(更多关于{{3} })
所以它看起来像是这样
class Product < ActiveRecord::Base
has_many :items
has_many :wishlists, through: :items
end
class Item < ActiveRecord::Base
belongs_to :product
belongs_to :wishlist
end
class Wishlist < ActiveRecord::Base
has_many :items
has_many :products, through: :items
end