在模板外键的对象,而不是它的ID显示Django的值()(Display Django values

2019-08-31 07:37发布

我有在Django一个查询集调用Model.objects.values('item') ...其中'item'是一个外键。

class Words(models.Model):
  word = models.CharField()

class Frequency(models.Model):
  word = models.ForeignKey(Words)
  ...

因此,这将返回该项目的ID和显示为模板的ID。 如何显示模板,而不是ID实际的项目价值?

Answer 1:

要引用外键项的属性,你应该使用在领域“__”查找符号。 MyModel.objects.values('item__prop1', 'item__prop2', ...)应该为你工作。

你可以通过引用这样的属性的名称,当结果模板变量的名称是模板打印出来values

{% for v in values %}
    Prop1: {{ v.item__prop1 }}
    Prop2: {{ v.item__prop2 }}
    ...
{% endfor %}


文章来源: Display Django values() on Foreign Key in template as object instead of its id