计算与帖子相关的评论

时间:2018-08-16 14:10:33

标签: laravel

我有两个与帖子相关的评论,但是用于计算与帖子相关的评论的代码显示为“ 1”。你知道为什么吗?

计算评论数的代码:

    $commentsCount= Post::with('comments')->count();

一个帖子可以有多个评论,一个评论与一个帖子相关联。

评论模型:

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

发布模型:

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

你知道为什么吗?

1 个答案:

答案 0 :(得分:1)

调用会急于将注释加载到Post模型上,但仍然只返回一个Post对象。

您需要在post对象上调用评论,以取回可以计数的收藏集。

根据您所拥有的代码判断,如果您按照以下方式进行操作

$post = Post::find(1);
$commentsCount = $post->comments->count();

您应该得到想要的东西。