при помощи ресурса, пишет Property [id] does not exist on this collection instance. В контроллере ссылки получаю через источник, связь один ко многим, а именно один источник может иметь много ссылок, делаю вот так:
$links = Source::where('token', $request->token)
->first()
->links()
->get();
После пытаюсь вывести id ссылки в ресурсе вот так:
public function toArray(Request $request): array
{
return [
'id' => $this->id
];
}
И получаю ошибку, в чём может быть дело ?
Get возвращает коллекцию, у коллекции нет свойства id
Выходит стоит попробовать вывести любое другое свойство ?
Нет, нужно понять что именно тебе нужно
Как ты в ресурс передаёшь, например
Хочу при помощи ресурса убрать из вывода некоторые поля и изменить дату на более читаемую
Да вроде как в доке, вот так return new LinkResource($links);
Ну ты же большую часть кода не показвыаешь
там есть функция collections
У тебя коллекция, а в доке скорее всего одна запись
В доке смотри что передаётся, одна модель или коллекция
first() и потом links() - неверный порядок👀
А как бы ты сделал ? По моей логике получаю один источник и достаю из него все ссылки принадлежащие ему...
first должен быть в самом конце, это типа что-то отправки созданного запроса в бд
Хорошо, сейчас попробую и так, может ресурсы заработают )
Обсуждают сегодня