当前位置: 首页 > 知识库问答 >
问题:

基于多个ID检索Laravel模型结果

伍溪叠
2023-03-14

我已经在我的Laravel应用程序中实现了ZendSearch。我使用它作为我的搜索引擎,用户将键入一个搜索词,然后ZendSearch将返回一个按相关性排序的结果数组。但是,ZendSearch返回的数组只返回我的记录ID(它不返回任何实际的记录信息)。

接下来查询我的模型以基于ZendSearch数组结果检索结果的正确方法是什么?该数组结果只是一个基于相关性排序的ID数组。

我知道Model::find(1)会返回ID为1的记录,但我如何向find()方法提供我希望按给定顺序返回的ID数组。

共有1个答案

琴刚豪
2023-03-14

这很简单。使用findMany

$models = Model::findMany([1, 2, 3]);

顺便说一下,您还可以将数组传递给find(),它将在内部调用findMany

$models = Model::find([1, 2, 3]);

在引擎盖下,它只是做了一个,其中,因此您也可以这样做:

$models = Model::whereIn('id', [1, 2, 3])->get();
 类似资料:
  • 问题内容: 我正在使用Laravel 4,我需要在MySQL表中插入一些行,并且需要找回插入的ID。 对于单行,我可以使用,但是它不支持多行。如果我至少能像普通的MySQL一样检索第一行的ID,就足以找出其他的ID。 问题答案: 根据用户Xrymz的建议,返回第一个。 根据Schemaapi 接受数组 所以你必须能够 就是说,如果使用MySQL,则可以由此检索第一个ID并计算其余的ID。还有一个功

  • 我在为我的项目中的搜索函数编写雄辩的查询时遇到了问题。以下是我的数据库表/模型: 一个艺术家有许多艺术作品,一个艺术作品有许多风格,也有许多艺术家。我已经验证了这些关系是否正常工作。我也有一个简单的形式,返回id作为一个请求与变量和。 因此,我想在函数中做两件事:首先,检查请求中的变量是否已设置(我已经可以这样做了)。然后,使用ELOQUENT根据表单的结果查询模型。 这里有一个例子:用户搜索米开

  • 我的表格结构如下: 公司表(有许多货物,有许多包裹) 创建包条目时,我希望执行以下操作: 如果我在$shipping上转储die,那么它在那里有所有正确的ID,并且我希望这些关系会允许创建它。但是,创建包失败,因为没有order_id(orders表中的id)的值 我是否误解了雄辩在这里的作用? 编辑: 命令 装运 包裹 为了创建一个订单,我使用以下工作正常。 要创建我试图使用的货件和包裹: 然而

  • 是否有任何简单的方法可以检索请求中的路由绑定模型? 我想更新模型,但在此之前,我想使用Requests方法执行一些权限检查。但我只希望模型的所有者能够更新它。 在控制器中,我只需执行以下操作: 但是我希望在请求中,而不是在控制器中这样做。如果我这样做: 它只给我标量表单属性(如等,但没有模型)。 问题 如果我将一个模型绑定到一个路由,我如何从请求中检索该模型? 非常感谢。

  • 我想从我的学生表中检索最后插入的id并传递到视图。但我不知道怎么做?我使用以下代码在表中插入数据。 有人能帮帮我吗?

  • 在ReservationController中。java我有以下方法,它从新的reservation中获取reservation对象。jsp 并将其发送到BookController。java,其中另一个方法向模型添加另一个属性 并返回以下addbook。jsp 现在,当我处理表单的action addBook时 我试图从模型中检索保留对象,但得到一个空。我如何通过我之前向您展示过的JSP传递我的