我有三个模型:列表,类别和网站。列表和网站之间存在多对多的关系,列表和类别之间存在多对多的关系。因此,列表属于一个或多个站点以及一个或多个类别(列表可以出现在多个站点和多个类别上)。
鉴于网站ID和类别ID,我想要一组所有列表。我了解如何从网站ID(listings = site.listings)获取列表以及如何从类别ID(listing = category.listings)获取列表,但是如何从列表集合中获取三重连接网站ID和类别ID?
sql看起来像(sit_id和cat_id是输入): 从列表l,categories_listings cl,listings_sites,ls中选择l.name cl.category_id = cat_id和ls.site_id = sit_id和cl.listing_id = l.id和ls.listing_id = l.id
提前致谢
答案 0 :(得分:0)
您可能需要执行has_many:through并通过指定belongs_to到父表来定义模型中的连接表。
class Assignment :assignments end class Project :assignments end
这[link] [1]也可能有所帮助。
干杯,祝你好运。
[1]:帮忙? Rails: has_many :through or has_many_and_belongs_to?