Я не могу получить доступ к полю MODEL в моих отношениях с базой данных - PullRequest
1 голос
/ 28 июня 2019

Я не могу получить доступ к полю MODEL в своей базе данных

Это код, который я выполняю:

@foreach($clients as client)
    {{$client->dependents->fname}}
    {{$client->dependents->mname}}
    {{$client->dependents->lname}}
@endforeach

Этот код возвращает error: свойство [fname] делаетне существует в этом экземпляре коллекции.

Когда я делаю этот код:

@foreach($clients as client)
    {{$client->dependents}}
@endforeach

Этот код возвращает массив данных successful.

Это моя модель клиента:

class Client extends Model
{
    protected $guarded = [];

    public function dependents() {
        return $this->hasMany(Dependent::class);
    }
}

А это моя зависимая модель:

class Code extends Model
{
    protected $guarded = [];

    public function client()
    {
        return $this->hasOne(Client::class);
    }
}

Как я могу получить каждое поле, используя метод красноречивой модели?

Ответы [ 2 ]

2 голосов
/ 28 июня 2019

Чтобы получить доступ к полям модели зависимостей, вам нужно создать foreach, потому что клиентская модель имеетMany зависимых и когда вы пытаетесь получить доступ просто $ client-> dependents-> fname не знает, к какому из них получить доступ. Итак, вам нужно сделать следующее:

@foreach($clients as $client)
    @foreach($client->dependents as $dependent)
       {{$dependent->fname}}
       {{$dependent->mname}}
       {{$dependent->lname}}
    @endforeach
@endforeach
0 голосов
/ 28 июня 2019

Это HasMany отношение И возвращает несколько отделов, так что fname не определено. Потому что у него есть объект отделов, а не отдел, и вам не хватает $ из @foreach($clients as client).

@foreach($clients as $client)
 @foreach($clients->dependents as $department)
   {{$dependent->fname}}
   {{$dependent->mname}}
   {{$dependent->lname}}
 @endforeach
@endforeach

Попробуйте, это будет работать для вас. Наслаждайтесь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...