Ruby on rails Rails有_和_属于_和_许多跨3个表连接

Ruby on rails Rails有_和_属于_和_许多跨3个表连接,ruby-on-rails,join,many-to-many,Ruby On Rails,Join,Many To Many,我有三个模型:列表、类别和站点。列表和站点之间存在多对多关系,列表和类别之间存在多对多关系。因此,列表属于一个或多个站点和一个或多个类别(列表可以出现在多个站点和多个类别上) 给定一个站点id和一个类别id,我想要一组所有的列表。我了解如何从站点id(listings=site.listings)获取列表,以及如何从类别id(listings=category.listings)获取列表,但如何从站点id和类别id获取列表集的三重连接 sql看起来像(输入的是sit_id和cat_id): 从列

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

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

sql看起来像(输入的是sit_id和cat_id): 从列表l、类别列表cl、列表站点、列表位置中选择l.name cl.category_id=cat_id,ls.site_id=sit_id,cl.listing_id=l.id,ls.listing_id=l.id


提前感谢

您可能需要执行has\u many:通过指定属于父表来定义模型中的联接表

class Assignment :assignments end class Project :assignments end 课堂作业:作业 结束 课堂专题:作业 结束 此[链接][1]也可能有所帮助

干杯,祝你好运


[1] :帮助

您可能需要对模型中的联接表执行has\u many:操作,并通过指定一个属于父表来定义联接表

class Assignment :assignments end class Project :assignments end 课堂作业:作业 结束 课堂专题:作业 结束 此[链接][1]也可能有所帮助

干杯,祝你好运

[1] :帮助