Skip to content

Commit

Permalink
Merge pull request #1138 from cclep/master
Browse files Browse the repository at this point in the history
Fixed 500 error when requesting include that didn't exist
  • Loading branch information
specialtactics committed Feb 17, 2019
2 parents 187db79 + 5b7743e commit e0c8648
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions src/Transformer/Adapter/Fractal.php
Expand Up @@ -4,6 +4,7 @@

use Dingo\Api\Http\Request;
use Dingo\Api\Transformer\Binding;
use League\Fractal\TransformerAbstract;
use Dingo\Api\Contract\Transformer\Adapter;
use League\Fractal\Manager as FractalManager;
use League\Fractal\Resource\Item as FractalItem;
Expand Down Expand Up @@ -64,10 +65,10 @@ public function __construct(FractalManager $fractal, $includeKey = 'include', $i
/**
* Transform a response with a transformer.
*
* @param mixed $response
* @param object $transformer
* @param \Dingo\Api\Transformer\Binding $binding
* @param \Dingo\Api\Http\Request $request
* @param mixed $response
* @param League\Fractal\TransformerAbstract|object $transformer
* @param \Dingo\Api\Transformer\Binding $binding
* @param \Dingo\Api\Http\Request $request
*
* @return array
*/
Expand All @@ -89,6 +90,11 @@ public function transform($response, $transformer, Binding $binding, Request $re
if ($this->shouldEagerLoad($response)) {
$eagerLoads = $this->mergeEagerLoads($transformer, $this->fractal->getRequestedIncludes());

if ($transformer instanceof TransformerAbstract) {
// Only eager load the items in available includes
$eagerLoads = array_intersect($eagerLoads, $transformer->getAvailableIncludes());
}

$response->load($eagerLoads);
}

Expand Down

0 comments on commit e0c8648

Please sign in to comment.