Я использовал эту библиотеку для добавления фрактального трансформатора в свой json-выход.Использование включения в фрактальный трансформатор Laravel 5?
//This is main tranformer for service provider enquiry transformer
class CustomerVehicleTransformer extends TransformerAbstract {
protected $defaultIncludes = [
'service_provider_enquries'
];
public function transform(CustomerVehicle $customerVehicle) {
return [
'id' => (int) $customerVehicle->id,
'status' =>$customerVehicle->vehiclenumber
];
}
public function includeServiceProviderEnquries(CustomerVehicle $customerVehicle) {
$serviceProvider = $customerVehicle->service_provider_enquries;
return $this->item($serviceProvider, new ServiceProvidersEnquiryTransformer);
}
}
class ServiceProvidersEnquiryTransformer extends TransformerAbstract {
public function transform(ServiceProvidersEnquiry $book) {
return [
'modeofpayment' => (int) $book->modeofpayment
];
}
}
$manager =new Fractal\Manager();
if (isset($_GET['include'])) {
$manager->parseIncludes($_GET['include']);
}
$json = $manager->createData($resource)->toJson();
echo $json;
Когда я пытаюсь запустить этот код он выдает следующее сообщение об ошибке:
Argument 1 passed to App\Acme\FractalTransformers\ServiceProvidersEnquiryTransformer::transform() must be an instance of App\ServiceProvidersEnquiry, null given, called in /home/aidor/Documents/ozoServer/vendor/league/fractal/src/Scope.php on line 307 and defined
Что может быть проблема? Предложите, пожалуйста, некоторый пример defaultincludes и availableIncludes.
Спасибо это now..yup –
Рад, что вы работает получил работу – haakym