laravel 是否会为返回的模型集合的任何位置重新连接到数据库?

Will laravel reconnect to the database for any where on returned model collection?

如果我们有这样的发现:

$returnedModel = Flight::
with("passengers")
->find(1);

现在,如果我像这样在 returnedModel 上添加一个位置:

$returnedModel->passengers()->where("name" , "hamid")->first();

是否会Laravel 为返回的模型集合的任何位置重新连接到数据库?

我添加了 DB::getQueryLog() 并且这里有一个查询!我如何在不重新连接到数据库的情况下获得它?

您需要以 属性 的方式访问您的 passengers,而不是方法,顺便说一句,您得到一个已经从数据库加载的 Laravel 集合(感谢 with 急切加载).

$returnedModel->passengers->firstWhere('name', 'hamid');