Laravel blade echo значение не работает - PullRequest
0 голосов
/ 21 мая 2018

У меня есть две таблицы ..

Пользователь и UserMeta
Я установил отношения между ними с помощью hasOne ().

Модель

public function user_meta() {

    return $this->hasOne('App\UserMeta');

}

Контроллер

public function index() {
    $users = User::orderBy('id', 'desc')->paginate(10);
    return view('users.index')->with('users', $users);
}

Просмотр

@forelse ($users as $user)

  {{ $user->user_meta->country }}

  @empty
  @endforelse

Эта ошибка возврата

Попытка получить свойство 'страна' необъекта


Но здесь, если я использую dd () , как это.

@forelse ($users as $user)

  {{ dd($user->user_meta->country) }}

  @empty
  @endforelse 

Я вижу правильное возвращаемое значение. США

1 Ответ

0 голосов
/ 21 мая 2018

dd остановить выполнение цикла для первого элемента.Если вы используете dump helper, вы увидите эту ошибку снова после нескольких итераций.Вам нужно проверить на null:

@forelse ($users as $user)
   @if(!is_null($user->user_meta))
     {{ $user->user_meta->country }}
   @endif    
@empty
@endforelse  
...