Fracture Transform抛出给定的布尔值

时间:2016-09-16 13:49:35

标签: php laravel dingo-api

我在Laravel项目中使用Transformer。当我在Transformer中不包含其他对象时,没有任何问题,但是当我包含Customer对象时,我收到以下错误:

  

传递给App \ Transformers \ CustomerTransformer :: transform()的参数1必须是App \ Models \ Customer的实例,给定布尔值,在/ home / vagrant / Code / project / vendor / league / fractal / src /中调用第365行的Scope.php并定义了

当我从Scope.php打印对象时,其中没有任何布尔值。可能是什么问题呢? (代码在审核#298后崩溃。

enter image description here

我如何调用代码:

$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); 

1 个答案:

答案 0 :(得分:4)

解决了这个问题,我是个白痴......

我在Transformer课程中有以下内容:

public function includeCustomer(Review $review) 
{
    $customer = $review->customer;
    return $this->collection($customer, new CustomerTransformer);
}

问题是$customer是一个项而不是一个集合。我必须将this->collection更改为this->item