简体   繁体   English

Django 与父 model 的通用关系

[英]Django Generic Relation woth parent model

I have created a model Comments .我创建了一个 model Comments I want store reply in same table Comment .我想在同一张表Comment中存储回复。

class Comment(models.Model):
  user = models.ForeignKey(User, blank=True, null=True, on_delete=models.CASCADE)
  content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
  text = models.CharField(max_length=300, blank=False, null=False)
  object_id = models.PositiveIntegerField()  
  timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)

  content_object = GenericForeignKey('content_type', 'object_id')

  # Relation
  reply = GenericRelation(Comment, related_query_name='reply')
  like = GenericRelation(Like, related_query_name='like')

Here i am getting this error !!我在这里收到此错误!

  reply = GenericRelation(Comment, related_query_name='reply')
  NameError: name 'Comment' is not defined

How can i set this relationship?我该如何设置这种关系?

You're getting this error, because Comment is not defined yet.您收到此错误,因为尚未定义Comment

Replace代替

reply = GenericRelation(Comment, related_query_name='reply')

with

reply = GenericRelation('self', related_query_name='reply')

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM