我开始在学校学习Django,我对两个表之间的许多关系有疑问。
一部电影可以有多个评论,管理表单仅对此记录同时突出显示了两个评论,但是我希望看到两个内容,而不是所有评论ID的列表。
感谢您的帮助。
class Reviews(models.Model):
content = models.TextField(null=True)
url = models.TextField(null=True)
class Meta:
verbose_name = "Critiques"
ordering = ['content']
class Movies(models.Model):
title = models.CharField(max_length=45)
release_date = models.DateField(blank=True, null=True)
categories = models.ForeignKey(Categories, on_delete=models.CASCADE)
image = models.ImageField(upload_to='bms/photos', null=True)
synopsis = models.TextField(blank=True, null=True)
duration = models.IntegerField(blank=True, null=True)
is_available_in_theaters = models.BooleanField(default=0)
reviews_list = models.ManyToManyField(Reviews)
答案 0 :(得分:0)
然后,您应实施__str__
方法进行审核:
class Reviews(models.Model):
content = models.TextField(null=True)
url = models.TextField(null=True)
def __str__(self):
return self.content or ''
class Meta:
verbose_name = "Critiques"
ordering = ['content']
此处使用or ''
的原因是,如果content
为NULL
/ None
,则它将返回空字符串,因为应该__str__
总是返回一个字符串。
注意:通常,Django模型的名称为单数,因此使用
Review
而不是。Reviews