我有一个ModelChoiceField
我使用了widget RadioSelect
。
我在模板中迭代选项,但我只能获得choice.tag
和choice.choice_label
。我将访问特定对象中的所有字段,而不仅仅是选择标签。
我知道我可以使用label_from_instance
来更改choice_label
但仅仅有1个字段是不够的。
现在我用{% for choice in form.field %}{{ choice.tag }}{% endfor %}
进行迭代。选择仅包含tag
和choice_label
。我希望它还包含choice.object
或其他内容,以便我可以使用choice.object.id
,choice.object.full_name
,choice.object.gender
等。
答案 0 :(得分:1)
使用类似的东西:
{% for field in form.visible_fields %}{# loop over form fields #}
{% if field.name == "choice_field_name" %}
{% for choice in field.queryset %} {# loop over choices #}
{# here you access to choice object #}
{% endfor %}
{% endif %}
{% endfor %}