Django迭代ClearableFileInput小部件字段



目前有一个具有model.FileField()属性的模型,在我的django模板中渲染时,我只是迭代字段,例如

{% for field in form.visible_fields %}
    <div class="form-group">
    {{field.errors}}
    <label for="{{field.auto_id}}">{{field.label}}</label>
    {{field}}
 {% endfor %}

然而,当模板呈现ClearableFileInput小部件时,我想在href和清除小部件的复选框之间添加一些空间。关于如何访问该领域的这些特定"部分",有什么想法吗?

您必须覆盖默认的ClearableFileInput并将这些呈现属性设置为您的口味

class MyClearableInput(ClearableFileInput):
    template_with_initial = '%(initial_text)s: %(initial)s %(clear_template)s<br />%(input_text)s: %(input)s'
    template_with_clear = '%(clear)s <label for="%(clear_checkbox_id)s">%(clear_checkbox_label)s</label>'
    url_markup_template = '<a href="{0}">{1}</a>'

我已经放置了初始属性,但是您必须更改它们以反映您想要的输出。这是不言自明的。然后在表单中,使用Meta/widgets属性重写小部件以使用该类。

最新更新