Если вы добавите related_name к p_post:
p_post = models.ForeignKey('Post', on_delete=models.CASCADE, related_name="comments")
Вы сможете их циклически просматривать следующим образом:
for post in Post.objects.order_by('created_at').all()[0:5]:
for comment in post.comments.order_by('created_at').all()[0:5]:
print(comment.description) # do whatever you want with comment
Примечание: [0:5]
для ограничения до верхних 5
Вы также захотите предварительно выбрать комментарии при запросе сообщений: Post.objects.prefetch_related('comments')
Редактировать:
Еще раз прочитав ваш вопрос, я вижу, что это ответ API,Я бы посмотрел в rest_framework.serializers.ModelSerializer
class CommentSerialzier(serializers.ModelSerializer):
class Meta:
model = Comment
class PostSerializer(serializers.ModelSerializer):
comments = CommentSerializer(many=True)
class Meta:
model = Post