diff --git a/src/Transformer/Adapter/Fractal.php b/src/Transformer/Adapter/Fractal.php index 74d890a60..959eaa5b1 100644 --- a/src/Transformer/Adapter/Fractal.php +++ b/src/Transformer/Adapter/Fractal.php @@ -95,6 +95,19 @@ public function transform($response, $transformer, Binding $binding, Request $re $eagerLoads = array_intersect($eagerLoads, $transformer->getAvailableIncludes()); } + if (! empty($eagerLoads)) { + // Only load includes which correspond to actual relationships + $item = $response->first(); + + if ($item) { + foreach ($eagerLoads as $key => $eagerLoad) { + if (! method_exists($item, $eagerLoad)) { + unset($eagerLoads[$key]); + } + } + } + } + $response->load($eagerLoads); }