【问题标题】:Accessing a field through a GenericForeignKey in a django template formset通过 Django 模板表单集中的 GenericForeignKey 访问字段
【发布时间】:2017-01-16 23:58:49
【问题描述】:

假设我有以下模型

class Holder(models.Model):
    other_field = models.BooleanField(default=True)
    object_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
    object_id = models.PositiveIntegerField()
    object = GenericForeignKey('object_type', 'object_id')

然后在views.py中,我为Holder创建了一个formset,并将其传递给模板:

formset = modelformset_factory(Holder, fields =('other_field',))
data = {'formset': formset}

template.html中,我想访问相关对象的一个​​字段。我试过了:

{% for form in formset %}
     {{ form.object.related_field }}
     {{ form.other_field }}
{% endfor %}

然后,other_field 显示,但 related_field 不显示。如何在模板中显示 related_field 中的值?

【问题讨论】:

    标签: python django django-templates generic-foreign-key


    【解决方案1】:

    好的,我终于用formset解决了instance

    {% for form in formset %}
        {{ form.instance.object.related_field }}
        {{ form.other_field }}
    {% endfor %}
    

    【讨论】:

      猜你喜欢
      • 2012-06-05
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-10
      • 1970-01-01
      • 2011-03-13
      • 2018-07-18
      相关资源
      最近更新 更多