0

我想将不同模型上的多个查询链接在一起,这可能吗?

示例:我的餐厅有很多菜肴。我想搜索靠近某个位置的餐厅,然后搜索这些餐厅提供的与查询匹配的菜肴。我geocoder对这两个查询都使用了 PGSearch,但我不知道如何让它们一起工作,以便我有一个查询,而不是将所有附近的餐馆加载到内存中,然后按查询进行搜索。

谢谢!

4

1 回答 1

0

您需要使用“加入”,我没有使用这些宝石,但我将放置一个通用的活动记录搜索,然后您可以根据您的情况对其进行调整:

Restaurante.where(query_on_restaurante).joins(:dishes).where(dishes:{query_on_dishes})

在哪里:

query_on_restaurantes 可以类似于: location:"Hawai" :disses 被假定为关系的名称(restaurante has_many 菜肴) query_on_dishes 可以类似于:name:"Cheetos"

注意第二个 where 语句的括号。

于 2014-10-16T05:31:54.133 回答