一、场景
当一个文章展示页面需要展示评论时候,在文章模型中写关联方法取出该文章所有的评论,在展示的时候实际不需要获取。直接传入模型数据就可以。在视图层直接调用关联方法就可以。但是实际情况是:获取数据逻辑不在视图层。所以在控制层获取
二、代码实现
模型层方法:
public function comment(){
return $this->hasMany('App\Http\Model\Comment')->orderBy('created_at','desc');
}
控制器层方法:
public function show(Article $article){
//评论预加载
$article->load('comment');
return view('home.article.show',compact('article'));
}
视图层:
@foreach($article->comment as $comment)
<li class="list-group-item">
<h5>{{$comment->created_at}} by {{$comment->user->name}}</h5>
<div>
{{$comment->content}}
</div>
</li>
@endforeach
网友评论