为什么 findmany() 在这里不起作用 - Lumen/Laravel?

Why does findmany() not work here - Lumen/Laravel?

我试图在一个集合上使用 findmany(),我用这个检查它是否是一个集合:

if ($join instanceof Collection) {
  log::info("deemed collection");
}else{
  log::info("not deemed collection");
}

虽然好像是合集,但还是报错:

BadMethodCallException

Method Illuminate\Database\Eloquent\Collection::findmany does not exist.

当我尝试在其上使用 findmany() 时,如下所示:

$join = $join->findmany(1);

$join 是这样创建的:

$join = coretable::with($permittedTables)->get();

其中 $permittedTables 是一个表名数组,因此集合可以包含任意数量和组合的表。

为什么我不能使用此集合中的 findmany() 方法?它应该可以从集合中访问,不是吗?

$join = $join->findMany([1,2,3]);

findMany 使用 Id 数组。

而且 findMany 应该是驼峰式的。

集合上没有findMany方法,只有find.

您可以在查询生成器上调用 findMany,然后再从数据库中检索记录,例如:

$join = coretable::with($permittedTables)->findMany([1]);