我已将ZendSearch
实施到我的Laravel
应用程序中。我使用它作为我的搜索引擎,用户将在其中键入搜索词,然后ZendSearch
将返回一系列按相关性排序的结果。但是,ZendSearch
返回的数组只返回我的记录ID(它不会返回任何实际的记录信息)。
下一步是查询我的模型以检索基于ZendSearch
数组结果的结果的正确方法,该结果只是基于相关性排序的ID数组。
我知道Model::find(1)
会返回ID为1的记录,但是如何将find()
方法提供给我想要返回的ID数组?命令我给它。
答案 0 :(得分:173)
这很简单。使用findMany
:
$models = Model::findMany([1, 2, 3]);
顺便说一句,您也可以将数组传递给find()
,它会在内部调用findMany
:
$models = Model::find([1, 2, 3]);
在引擎盖下它只是whereIn
,所以你也可以这样做:
$models = Model::whereIn('id', [1, 2, 3])->get();