Laravel - 模型未传递给 first() 方法的闭包
Laravel - A model is not passed to first() method's closure
我有一个 collection
,我正在调用它的 first()
方法,并带有一个闭包,期望参数为 $model
.
执行时,如果我尝试访问 $model
的 属性;它说:
Accessing property of non-object
我尝试转储 $model
,发现它有一个整数 1
而不是 Object
。
$Collection->first( function($model) {
if(!$model) return false;
return $model->type == 'Test';
});
我刚开始工作。 first()
方法的参数闭包提供了 2 个变量。第一个是关键,第二个是模型。因此,您将调用如下所示的 first()
方法,如果它满足您定义的条件,则只需 return true
.
$result = $collection->first( function($i, $model) {
// define criteria and return true if it satisfies. The model will now be returned in resulting Collection.
});
我有一个 collection
,我正在调用它的 first()
方法,并带有一个闭包,期望参数为 $model
.
执行时,如果我尝试访问 $model
的 属性;它说:
Accessing property of non-object
我尝试转储 $model
,发现它有一个整数 1
而不是 Object
。
$Collection->first( function($model) {
if(!$model) return false;
return $model->type == 'Test';
});
我刚开始工作。 first()
方法的参数闭包提供了 2 个变量。第一个是关键,第二个是模型。因此,您将调用如下所示的 first()
方法,如果它满足您定义的条件,则只需 return true
.
$result = $collection->first( function($i, $model) {
// define criteria and return true if it satisfies. The model will now be returned in resulting Collection.
});