通过 Django 模板表单集中的 GenericForeignKey 访问字段
Accessing a field through a GenericForeignKey in a django template formset
假设我有以下 模型:
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 = 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 中的值?
好的,我终于通过使用表单集 instance:
解决了
{% for form in formset %}
{{ form.instance.object.related_field }}
{{ form.other_field }}
{% endfor %}
假设我有以下 模型:
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 = 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 中的值?
好的,我终于通过使用表单集 instance:
解决了{% for form in formset %}
{{ form.instance.object.related_field }}
{{ form.other_field }}
{% endfor %}