Komentarze do odpowiedzi

0

Witam,

powiedzmy że mamy system postów taki jak na forum, do postu możemy dodać odpowiedzi a do odpowiedzi komentarze. W jaki sposób wyświetlić komentarze dla danej odpowiedzi?

Chciałem to zrobić za pomocą Join jednak w odpowiedzi otrzymuję pustą tablicę. Używam Laravela


$answers = AnswersPost::where('post_id', $id)
            ->orderBy('created_at', 'DESC')
            ->join('users', 'users.id', '=', 'answers_posts.user_id')
            ->join('comments as com', 'com.reply_id', '=', 'com.id')
            ->select('answers_posts.*', 'users.username', 'users.avatar as user_avatar', 'users.created_at as user_created',
                'com.id as comment_id', 'com.comment')
            ->get();
        return AnswersPostForumResource::collection($answers);

w otpowiedzi

{
    "data": []
}
1

Nie powinno być coś w stylu?

->join('comments as com', 'com.reply_id', '=', 'answers_posts.id')

?

0

Dokładnie tak powinno być :D
jednak to nie zmieniło faktu że otrzymuję pustą tablicę :/

0

Czemu w taki sposób piszesz skoro Laravel oferuje Eloquent itp.

Tworzysz model post, w nim ustawiasz hasMany(Comments::class, 'id_comment', 'id_post') i korzystasz potem w prosty i łatwy sposób.

1 użytkowników online, w tym zalogowanych: 0, gości: 1