有没有办法将两个单独的Searchkick::Results
对象合并为一个。
E.g
user = User.search("abc", where: { <condition 1 > })
blog = Blog.search("abc", where: { <condition 2 > })
将两个结果合并到一个Searchkick :: Results对象,以便我可以使用分页,相关性搜索等作为一个单元。
我看了Multi Search,但这似乎没有做我想要的事情
打开了一张罚单答案 0 :(得分:0)
user = User.search("abc", where: { <condition 1 > })
blog = Blog.search("abc", where: { <condition 2 > })
使用concat
方法将两个对象转换为数组并合并数组。
user_blog = user.to_a.concat(blog.to_a)
答案 1 :(得分:0)
您可以使用以下方法搜索多个索引:
where = {
_or: [
{_type: "user", somefield: "value1"},
{_type: "blog", otherfield: "value2"}
]
}
Searchkick.search "abc", index_name: [User, Blog], where: where