如何在Django中循环到这个函数?

时间:2017-02-16 19:25:27

标签: python django django-forms django-templates

我在表单中有这个def来自定义attrs

def __init__(self, *args, **kwargs):
    super(ejemploForm, self).__init__(*args, **kwargs)
    self.fields['image'].widget = forms.ClearableFileInput(attrs={
        'id': 'Logo',
        'class': 'file', 'data-show-upload':'false', 'data-show-preview':'false',
        'name': 'logito',
        'placeholder': 'myCustomPlaceholder'})

我想为模板中的每个小部件执行此操作,例如: 这是我的HTML文件

<div class="row">
     <div class="col-md-8 col-md-offset-2">
    <div class="form-group">
{{form.image}}
</div>
</div>
</div>
<div class="row">
     <div class="col-md-8 col-md-offset-2">
    <div class="form-group">
{{ form.image }}
</div>
</div>
 </div>

所以例如对于第一个{{form.image}}我想要这个:

    'id': 'Logo',
    'class': 'file', 'data-show-upload':'false', 'data-show-    preview':'false',
    'name': 'logito',
    'placeholder': 'myCustomPlaceholder'})

对于第二个{{form.image}}我想要这个:

    'id': 'imagen1',
    'class': 'file', 'data-show-upload':'false', 'data-show-preview':'false',
    'name': 'imagen1',
    'placeholder': 'myCustomPlaceholder'})

如何使用之前的def函数执行此操作?

1 个答案:

答案 0 :(得分:0)

如果所有图像都来自同一表格,请尝试以下操作:

{% for field in form %}
    <div class="row">
        <div class="col-md-8 col-md-offset-2">
            <div class="form-group">        
                {{field}}
            </div>
        </div>
    </div>
{% endfor %}

如果它们来自不同的形式,则需要为每种形式做同样的事情。