我正在我的网页上创建评论部分,并希望用户能够对评论投赞成票或反对票。
我的模型是这样的:
class Comment(models.Model):
owner = models.ForeignKey(User)
body = models.TextField(null=True, blank=True, max_length=500)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
class Vote(models.Model):
comment = models.ForeignKey(Comment)
upvote = models.SmallIntegerField(null=True, blank=True, default=0)
downvote = models.SmallIntegerField(null=True, blank=True, default=0)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
当用户发表评论时,我希望它也创建一个链接到该评论的投票模型。
我是 django 和编程的新手,但根据我的理解,我需要创建一个保存挂钩或类似的东西?
您可以覆盖save()
的方法Comment
模型,即:
class Comment(models.Model):
...
def save(self, **kwargs):
super(Comment, self).save(**kwargs)
vote = Vote(comment=self)
vote.save()
我建议你阅读文档 https://docs.djangoproject.com/en/1.7/ref/models/instances/#what-happens-when-you-save为了获得更好的洞察力。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)