Как добавить ключ для parent :: toArray в Laravel Resources - PullRequest
0 голосов
/ 24 апреля 2020

Мой код:

$live_events = LiveEventContent::whereIn('parent_content_id',$contents_ids)->get();
foreach ($live_events as $live_event){
    //I will add an key called isStreamAvailable to the object
    $live_event->isStreamAvailable = true;
}
return LiveEventResource::collection($live_events);

и модель My Resource;

public function toArray($request)
{
    return parent::toArray($request);
}

Я хочу добавить ключ isStreamAvailable в ресурс.

Как редактировать функцию в моей модели ресурсов вместо parent :: toArray?

Ответы [ 2 ]

1 голос
/ 24 апреля 2020

Добавьте его к возвращаемому значению от родителя:

public function toArray($request)
{
    $response = parent::toArray($request);

    $response['isStreamAvailable'] = true;

    return $response;
}
0 голосов
/ 24 апреля 2020

на случай, если вам нужно получить значение из вашей модели.

public function toArray($request)
{
    return parent::toArray($request);
}

public function with($request)
{
    return [
        'isStreamAvailable' => $this->isStreamAvailable()
    ];
}

Или добавление данных при построении ресурсов

return (new LiveEventResource($live_events)
                ->additional(['isStreamAvailable' => true]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...