Django - 在ModelForm选择字段上自定义for循环会引发“无效选择”错误

时间:2018-04-14 23:59:55

标签: python django

我正在将Django表单与RadioSelect小部件一起用于其中一个字段 - {{ form.field1 }}。 将模板中的表单呈现为{% for choice in acc.field1 %} <label> <div class='...'><input type='radio' name='field1'/></div> <div class='...'>{{ choice }}</div> </label> {% endfor %} 不会引发任何错误(即无效选项),但我想为无线电选择小部件添加更多自定义。

下面的代码是我在我的模板中编写的循环for循环,以循环每个选项来设置它们的样式......

{{1}}

...会引发错误'无效选择'。

我在这里做错了吗?感谢

1 个答案:

答案 0 :(得分:0)

目前尚不清楚您要在两个div中尝试呈现的具体内容,但无论如何您在手动呈现的输入上缺少value属性。渲染{{ choice }}也将呈现第二个输入,这将进一步使事情复杂化。

看看documentation如何控制选择的渲染 - 我认为你需要做这些事情:

{% for choice in acc.field1 %}
    <label>
         <!-- Render the input itself -->
         <div class='...'>{{ choice.tag }}</div>
         <!-- Render a label for the input manually -->
         <div class='...'>{{ choice.choice_label }}</div>
    </label>
{% endfor %}