我有一个乡村,它有许多地区,,有许多商店。
乡村>地区>商店。
我想要一份根据国家,而不是地区的所有商店的清单。就像这样:
@shops = Shops.find(some query based on country = America).谢谢,
发布于 2015-08-10 05:18:37
请参阅Rails关于连接表的文档。具体来说,看一看标有"12.2.4加入嵌套关联(多个级别)“的小节:
querying.html#using-array-hash-of-named-associations
您的查询可能最终会出现这样的情况(尽管您可能需要检查一些符号上的复数):
@shops = Shop.joins(:area => :countries).where(:countries => {:name => 'America'})发布于 2015-08-10 07:44:10
你的商店是belongs_to地区,belongs_to地区吗?如果是这样的话,也许你可以这样做。
class Country
has_many :areas
has_many :shops, through: :areas
end
class Area
belongs_to :country
end
class Shop
belongs_to :area
end所以,您可以使用这样的东西:@country.shops
https://stackoverflow.com/questions/31911920
复制相似问题