我在 Django 中使用以下模型:
模型 1
class Location(models.Model):
GID = models.UUIDField(
primary_key=True, default=uuid.uuid4, editable=False)
fAccountGID = models.ForeignKey(
Account, on_delete=models.CASCADE, verbose_name='Account code')
MainDescription = models.CharField(
verbose_name='Description/title', max_length=100)
...
def __str__(self):
return self.MainDescription
模型 2
class Review(models.Model):
Code = models.AutoField(primary_key=True)
fLocationGID = models.ForeignKey(
'Location', on_delete=models.CASCADE, verbose_name='Location')
...
def __str__(self):
return 'Review for ' + self.FirstName
当评论保存在我的数据库中时,在 Django 管理中它显示为“评论”+ 名字:
如果我想从 Location 模型中显示为 'Review for ' + 'MainDescription',应该采用什么方法?谢谢
请您参考如下方法:
覆盖 __str__ 并遍历外键(到 Location)以检索 MainDescription 字段的值:
class Review(models.Model):
...
...
def __str__(self):
return 'Review for ' + self.fLocationGID.MainDescription
