Я пытаюсь получить имена пользователей, которые разместили комментарии, однако я продолжаю получать сообщение об ошибке «Попытка получить свойство« имя пользователя »необъектного объекта».Я считаю, что мои отношения установлены правильно, но я могу ошибаться.
Мои таблицы:
Table: Users
Columns: id, username, password
Table: Comments
Columns: id, user_id, image_id, comment
Модель комментария:
class Comment extends Model
{
public function users(){
return $this->belongsTo('App\User');
}
}
Модель пользователя:
class User extends Model implements Authenticatable
{
public function comments(){
return $this->hasMany('App\Comment');
}
}
Я получаю комментарии вроде этого:
$comments = Comment::with('users')->where('image_id', $id)->get();
И затем пытаюсь просмотреть их в виде, подобном этому:
@foreach($comments as $comment)
<p>{{ $comment->comment }}</p>
<p>{{ $comment->users->username }}</p>
@endforeach
И когда я dd ($ комментарии), я вижу:
#relations: array:1 [▼
"users" => null
]
Я не уверен, почему он нулевой.