Невозможно указать «заголовок» из таблицы продуктов - php artisan tinker - PullRequest
2 голосов
/ 08 ноября 2019

Использование php artisan tinker Я могу получить таблицу продуктов, которая в данном примере относится к первому пользователю в моей базе данных

>>> App\User::first()->product;
=> Illuminate\Database\Eloquent\Collection {#2912
     all: [
       App\product {#2898
         id: 2,
         owner_id: 2,
         title: "ListingTestTitle",
         description: "ListingTestDescription",
         price: "420.69",
         created_at: "2019-11-08 13:21:28",
         updated_at: "2019-11-08 13:21:28",
       },
     ],
   }

Однако, когда я пытаюсь перейти в эту коллекцию дальше ипросто возьмите заголовок и я получаю следующую ошибку

>>> App\User::first()->product->title;
Exception with message 'Property [title] does not exist on this collection instance.'

Я получаю ту же проблему независимо от того, какой атрибут я пытаюсь получить.

Ответы [ 3 ]

2 голосов
/ 08 ноября 2019

Вы можете использовать hasOne отношения в вашей User модели

App\User::first()->product->first()->title;
1 голос
/ 08 ноября 2019

Поскольку product - это отношение hasMany в вашей модели User, обратитесь к первому также из коллекции отношений

App\User::first()->product->first()->title;

Или просто измените отношение на hasOne

Надеюсь, это поможет

0 голосов
/ 08 ноября 2019
App\User::first()->product->first()->title;
...