2

我有三个模型:列表、类别和站点。列表和网站之间存在多对多关系,列表和类别之间存在多对多关系。因此,一个列表属于一个或多个站点和一个或多个类别(一个列表可以出现在多个站点和多个类别上)。

给定一个站点 ID 和一个类别 ID,我想要一组所有列表。我了解如何从站点 id (listings = site.listings) 中获取列表以及如何从类别 id (listings = category.listings) 中获取列表,但是如何从列表中获取列表集的三重连接站点 ID 和类别 ID?

sql看起来像(输入sit_id和cat_id): select l.name from Listings l, categories_listings cl, listings_sites, ls where cl.category_id = cat_id and ls.site_id = sit_id and cl.listing_id = l.id and ls .listing_id = l.id

提前致谢

4

1 回答 1

0

您可能需要执行 has_many :through 并通过将 belongs_to 指定给父表来定义模型中的连接表。

课堂作业:作业
  结尾
  类项目:作业
  结尾

这个 [link][1] 也可能有帮助。

干杯和好运。

[1]:帮助?Rails:has_many :through 还是 has_many_and_belongs_to?

于 2009-04-25T09:10:50.307 回答