迭代django表单的正确方法是什么?

迭代django表单的正确方法是什么?,django,django-forms,Django,Django Forms,我正在动态地创建这样一个表单 def partial_order_item_form(item): """dynamic form limiting optional_items to their items""" class PartialOrderItemform(forms.Form): quantity = forms.IntegerField(widget=forms.TextInput(attrs={'size':'2', 'class':'quant

我正在动态地创建这样一个表单

def partial_order_item_form(item):
    """dynamic form limiting optional_items to their items"""
    class PartialOrderItemform(forms.Form):
        quantity = forms.IntegerField(widget=forms.TextInput(attrs={'size':'2', 'class':'quantity','maxlength':'5'}))
        option = forms.ModelChoiceField(queryset=OptionalItems.objects.filter(item=item),widget= forms.RadioSelect())

    return PartialOrderItemform
有了它,我可以像这样渲染模板中的选项,而且效果非常好

{% for item in form.option %}
 {{ item }}
{%endfor%}
但是这个
{{item.price}}
不起作用。我需要一个简短的解释,为什么它不起作用,以及如何去做


我环顾四周,但找不到类似的问题(我一定没有找到正确的搜索方式),非常感谢您提供链接。

如果您想迭代,我想您需要字段queryset。使用manage.py shell实例化表单并进行内省。为什么不使用form.as\u XXX?

我不使用form.as\u XXX,因为我希望能够访问选项的更多属性,如价格。form.as_xxx仅返回item.form.fields[“option”].queryset