«Свойство [тело] не существует в этом экземпляре коллекции - PullRequest
0 голосов
/ 21 февраля 2019

Я веду блог, и у него есть странная проблема.Я использовал соединения OneToMany между моделью комментариев и сообщений (в одном сообщении может быть много комментариев) для модели сообщений:

public function comments(){
    return $this->hasMany('App\Comment');
}

и для модели комментариев:

public function Posts(){
    return $this->belongsTo('App\Posts');
}

Теперь проблема, с которой я столкнулся,в show.blade.php , который получает данные от контроллера из метода контроллера show () и возвращает некоторые данные о сообщениях.

public function show($id)
{
   $post = Posts::find($id);
   return view('posts.show')->with('post', $post);
}

и из шаблона блейда, который я показываюкомментарии, связанные с этим сообщением в соответствии с postid

<div class="card-body">
     <h5 class="card-title"><strong>test comment:</strong></h5>
     <p class="card-text">{{$post->comments->body}}</p>
</div>

, когда я отображаю комментарий в теле, удаляющем лезвие, я получаю следующее: data from comments table

я пытался $post->comments->bodyно я получаю ошибку, что не так с этим, предложение будет оценено

1 Ответ

0 голосов
/ 21 февраля 2019

comments - это экземпляр коллекции, который необходимо перебрать

@foreach($post->comments as $comment)
 <p class="card-text">{{$comment->body}}</p>
@endforeach

Или же с одним комментарием {{$post->comments[key]->body}} Заменить ключ на индекс, например

{{$post->comments[0]->body}}

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