如何禁止返回看不见状态的评论?

时间:2018-07-10 13:22:43

标签: php mysql laravel

我编写查询以获取评论,并回复发表评论的人。 发表在评论表上的评论和回复评论。 我的查询是:

$comments = Comment::with(['reply_comments', 'user', 'scores'])
            ->where('comments.place_id', $place[0]->id)
            ->where('status', 1)
            ->orderBy('id', 'desc')
            ->get();

尽管条件检查注释的状态,但此条件对注释执行,但对replyComment不执行。 这意味着在看不到状态时返回回复评论。 如何为此更改查询或条件。

1 个答案:

答案 0 :(得分:1)

您也可以在with中过滤关系:

$comments = Comment::with(['reply_comments' => function ($query) {
          $query->where('status', 1);
        }, 'user', 'scores'])
        ->where('comments.place_id', $place[0]->id)
        ->where('status', 1)
        ->orderBy('id', 'desc')
        ->get();