【发布时间】:2018-02-25 09:10:48
【问题描述】:
我想在模板中显示评论和回复。但是有一个问题,每个回复都可能有其他回复。下面的 sn-p 是我的Comment 和CommentReply 模型:
class Comment(models.Model):
author = models.ForeignKey(Profile, related_name="c_sender", on_delete=models.CASCADE, unique=False)
comment = models.CharField(max_length=500, unique=False)
created_date = models.DateTimeField(auto_now_add=True)
edited_date = models.DateTimeField(blank=True, null=True)
def __str__(self):
return self.comment
@property
def replys(self):
return CommentReply.objects.filter(comment_id=self)
class CommentReply(models.Model):
comment_id = models.ForeignKey(Comment, related_name='sender', on_delete=models.CASCADE)
reply_id = models.ForeignKey(Comment, related_name='reply', on_delete=models.CASCADE)
更新: 我还有一个 WorksComments 模型,每个与 Work 模型相关的 cmets 都保存在那里。
class WorkComment(models.Model):
work_id = models.ForeignKey(Work, on_delete=models.CASCADE, related_name='e_exercise', unique=False)
comment_id = models.ForeignKey(Comment, related_name='e_comment', unique=False)
下面的sn-p是我的看法:
comments = WorkComment.objects.filter(work_id=work).all()
return render(request, 'work.html', {'comments': comments})
我的问题是如何显示 cmets 以及它下面的回复,每个回复可能还有一些我也想显示的其他回复。
【问题讨论】:
-
你的视图是什么样的?
-
我更新了它并添加了视图。
标签: django django-models django-templates django-views django-orm