У меня есть Ресурсы внутри ресурсов, обычно это будет работать нормально, но если Ресурс 1.1.1 внутри Ресурса 1.1 даст поле с определенным значением, мне нужно, чтобы он возвратил пустой массив в Ресурсе 1. Чтобы это не чтобы показать, что конкретный Ресурс 1.1 внутри коллекции Ресурс 1
Попробовал использовать json_decode, и он заставил Resource обработать и выдает строку результата Resource и json_decode, чтобы вернуть его обратно в массив.
// Ресурс 1.1 ->
return [
'id' => (int)$this->id,
'block' => BlockResource::collection($this->blocks)->data($this->parameters);
];
// (1.1.1) BlockResource
return [
'id' => (int)$this->id,
'groups' => Resource::collection()
];
дд ($ BlockResource); // показывает объект ресурса, а не обработанный результат
$ BlockResource = json_encode ($ BlockResource);
дд ($ BlockResource); // строка с обработанным и может сделать json_decode для возврата в виде массива ....
Пример:
resource1: [
{
id : 1
block:{
id : 1
groups : [1,2,3,4,5]
}
},
{
id : 2
block:{
id : 2
groups : []
}
}
]
2º resource1.1 не должен отображаться, так как groups это пустой массив
Я могу использовать трюк json_encode / decode, но это даст мне лишнюю обработку.
Есть идеи: D?