Django 手动渲染多值字段的子字段

Django 手动渲染多值字段的子字段,django,python-3.x,django-forms,django-templates,Django,Python 3.x,Django Forms,Django Templates,在我的Django 1.7应用程序中,我试图利用MultiValueField类实现一个password/confirm password表单元素,即两个单独的密码字段,要求用户输入并确认新密码。我已经用两个单独的字段和表单上的clean()方法实现了这一点,但“单”多值字段似乎是维护DRY原则的更好方法,特别是因为我不仅需要在用户注册表单中复制,而且还需要在用户想要更改密码时复制 然而,我的前端非常具体,一点也不像Django的默认表单输出,所以我很抱歉。这非常有效——直到我进入多值字段。对于

在我的Django 1.7应用程序中,我试图利用MultiValueField类实现一个password/confirm password表单元素,即两个单独的密码字段,要求用户输入并确认新密码。我已经用两个单独的字段和表单上的
clean()
方法实现了这一点,但“单”多值字段似乎是维护DRY原则的更好方法,特别是因为我不仅需要在用户注册表单中复制,而且还需要在用户想要更改密码时复制

然而,我的前端非常具体,一点也不像Django的默认表单输出,所以我很抱歉。这非常有效——直到我进入多值字段。对于每个表单字段,我的HTML如下所示:

<div class="row collapse">                                                                                                                                                                                                                                    
    <div class="small-2 columns">                                                                                                                                                                                                                             
        <span class="prefix"><i class="fi-mail"></i></span>                                                                                                                                                                                                   
    </div>                                                                                                                                                                                                                                                    
    <div class="small-10  columns {% if form.email.errors %}error{% endif %}">                                                                                                                                                                                
        {{ form.email }}                                                                                                                                                                                                                                      
        {% if form.email.errors %}<small class="error">{{ form.email.errors }}</small>{% endif %}                                                                                                                                                             
    </div>                                                                                                                                                                                                                                                    
</div>

{{form.email}
{%if-form.email.errors%}{{form.email.errors}}{%endif%}
我需要为
form.password
的每个子字段执行类似的格式设置,但我尝试过的任何操作都没有为我提供渲染的子字段;最近的一个例子是我的模板中的
{{form.fields.password.fields.0}
,它给了我类似
的输出,但是这显然不是一个呈现的表单字段


是否有一些简单而明显的东西我遗漏了,或者我试图在Django做的是不可能的?

中的代码适合您的问题,正如farthVader所建议的那样。

我有一个类似的问题,我最终以这种方式解决了它:

<input type="text" id="{{ form.password.html_name }}_0" name="{{ form.password.html_name }}_0" value="{{ form.password.value.0|default_if_none:'' }}"/>
<input type="text" id="{{ form.password.html_name }}_1" name="{{ form.password.html_name }}_1" value="{{ form.password.value.1|default_if_none:'' }}"/>

在用多值字段和多窗口小部件明确划分验证逻辑一个小时后,我被困在这里。你能克服这个问题吗?我将不胜感激!:)这个解决方案对我有效。