Доступ к загруженным объектам в представлении laravel 5.7 - PullRequest
0 голосов
/ 22 октября 2018

У меня есть несколько моделей, которые связаны с одной моделью. Позвоните, у меня все отношения определены, и они работают довольно хорошо, но у меня есть проблемы с нетерпеливо загруженными результатами.

У меня есть этот запрос:

    $callDetails =\App\Call::with(['client','subissues','subissues.issue','partner','district'])
                      ->where('call.id', '=', $id)
                      ->get();

, который прекрасно работает при возврате тинкера

{"id":17400,
"client":{"id":18317,"name":"Yad  Kal","phonenumber":"0991234567","age":27,"gender":"Male"},
"district":{"id":1,"name":"Dedza"},
"comments":" He complained ",
"completeness":"complete",
"perpetrator":1,
"partner_id":119,"status":1,
"subissues":[{"id":1378,"name":"Issues of Dissatifaction","description":"Issues of Dissatifaction","issue":{"id":6,"name":"Emergency Response (World)","description":"Emergency response"},"pivot":{"call":17400,"subissue":1378}}],"partner":{"id":119,"name":"World"}} 

, но при попытке получить доступ к клиенту с помощью $callDetails->client возвращает только идентификатор клиента.и $callDetails->client->name возвращает ошибку.

Я не знаю, что делаю не так, но все загруженные результаты вызывают у меня головную боль!

1 Ответ

0 голосов
/ 22 октября 2018

Убедитесь, что в вашей таблице нет столбца с именем client или в вашей модели нет свойства с именем client.Если отношение и поле / свойство имеют одно и то же имя (в вашем случае client), это может вызвать проблемы, поэтому в таком случае вам следует переименовать либо отношение, либо поле / свойство

...