Как рассчитывать в Laravel из другой таблицы - PullRequest
0 голосов
/ 19 сентября 2018

Привет, я делаю таблицу данных, чтобы показать, сколько комментариев к этому сообщению от пользователя, который вошел в систему, и сделал это сообщение, но у меня есть какая-то ошибка, при этом получается только 1, но на самом деле я получил около 26 комментариев, я не знаю почему.

В моем контроллере:

public function getCountComment()
{
    $user = Auth::user();
    return $all_count = $user->post()
        ->withCount('comment_to_post')
        ->take(5)->get();
}

Модель comment.php :

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

Я получил 26 комментариев, но он получил только 1количество комментариев.Надеюсь, вы поможете мне, ребята

"comment_to_post_count": 1

Ответы [ 3 ]

0 голосов
/ 19 сентября 2018

Я сделал так в своем коде - надеюсь, это поможет

public function getCountComment()
{
    $user = Auth::user();
    $posts = $user->posts();

    foreach ($posts as $key => $value) {
        $posts[$key]->post_comments_count = PostComment::where('post_id', $value->id)->count(); 
    }
    return $posts;
}
0 голосов
/ 19 сентября 2018

Вы должны попробовать это:

public function getCountComment()
{
    $user = Auth::user();
    $all_count = $user->post()
        ->withCount('comment_to_post')
        ->count();
    return $all_count;
}
0 голосов
/ 19 сентября 2018

Удаление take (5) метод (предел) может исправить это ..

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