我有这个型号:
class Country(models.Model):
name=models.CharField(max_length=100,unique=True)
createdon=models.DateTimeField(auto_now_add=True)
updatedon=models.DateTimeField(auto_now=True)
def __str__(self):
return self.name
class Guest(models.model):
nationality=models.ForeignKey(Country,related_name='guest-nation')
在我的views.py中,我这样做:
guest=Guest.objects.all().values('nationality')
在我的模板中:
{% for info in guest %}
{{ info.nationality }}
{% endfor %}
现在,我希望国籍字段返回国家/地区的名称,但它返回国家/地区的ID(存储在nationality_id中)字段。从文档中,我了解它应该返回 str 方法中指定的值。
如果值为nationality__name,我可以访问该名称。它看起来比我想象的更丑,并且我确信它应该调用 str 方法。我错了吗?
答案 0 :(得分:0)
试试这个:
{% for info in guest %}
{{ info.nationality.name }}
{% endfor %}