我正在创建一个博客,它存在一些奇怪的问题。我在评论和帖子模型之间使用了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);
}
从刀片模板中,我正在显示与该帖子从acc到postid相关的评论
<div class="card-body">
<h5 class="card-title"><strong>test comment:</strong></h5>
<p class="card-text">{{$post->comments->body}}</p>
</div>
我尝试了$post->comments->body
,但出现错误
这有什么问题,建议会得到赞赏
答案 0 :(得分:8)
comments
是您需要遍历
@foreach($post->comments as $comment)
<p class="card-text">{{$comment->body}}</p>
@endforeach
或者带有单个注释
{{$post->comments[key]->body}}
用索引之类的键替换
{{$post->comments[0]->body}}