断裂变换抛出布尔值给定
Fracture Transform throws boolean given
我在 Laravel 项目中使用 Transformer。当我不在 Transformer 中包含其他对象时,没有任何问题,但是当我包含 Customer
对象时,出现以下错误:
Argument 1 passed to App\Transformers\CustomerTransformer::transform() must be an instance of App\Models\Customer, boolean given, called in /home/vagrant/Code/project/vendor/league/fractal/src/Scope.php on line 365 and defined
当我打印来自 Scope.php
的对象时,其中没有任何布尔值。可能是什么问题呢? (Review #298
.
后代码崩溃
我如何调用代码:
$reviews = $this->review->paginate();
$transformer = new ReviewTransformer();
$with = $request->get('with', null);
if($with) {
$with = explode(';', $with);
$transformer->parseIncludes($with);
}
return $this->response->paginator($reviews, $transformer);
解决了问题,我是个白痴..
我的 Transformer class 中包含以下内容:
public function includeCustomer(Review $review)
{
$customer = $review->customer;
return $this->collection($customer, new CustomerTransformer);
}
问题是 $customer
是一个项目而不是一个集合。我不得不将 this->collection
更改为 this->item
。
我在 Laravel 项目中使用 Transformer。当我不在 Transformer 中包含其他对象时,没有任何问题,但是当我包含 Customer
对象时,出现以下错误:
Argument 1 passed to App\Transformers\CustomerTransformer::transform() must be an instance of App\Models\Customer, boolean given, called in /home/vagrant/Code/project/vendor/league/fractal/src/Scope.php on line 365 and defined
当我打印来自 Scope.php
的对象时,其中没有任何布尔值。可能是什么问题呢? (Review #298
.
我如何调用代码:
$reviews = $this->review->paginate();
$transformer = new ReviewTransformer();
$with = $request->get('with', null);
if($with) {
$with = explode(';', $with);
$transformer->parseIncludes($with);
}
return $this->response->paginator($reviews, $transformer);
解决了问题,我是个白痴..
我的 Transformer class 中包含以下内容:
public function includeCustomer(Review $review)
{
$customer = $review->customer;
return $this->collection($customer, new CustomerTransformer);
}
问题是 $customer
是一个项目而不是一个集合。我不得不将 this->collection
更改为 this->item
。