1

我建了一个django表单,简单摘录如下:

attachuploadediso = forms.BooleanField(label='Attach uploaded ISO', required=False)
detachuploadediso = forms.BooleanField(label='Detach uploaded ISO', required=False)
extractuploadediso = forms.BooleanField(label='Extract uploaded ISO', required=False)

然后我在我的模板中呈现表单,如下所示:

{% block mainbody %}
<form class = "mf" action="/form/" method="post">{% csrf_token %}
{{ form.errors }}
{{ form.non_field_errors }}
{{ form.label_tag }} {{ form.as_p  }}
<input type="submit" value="Submit" />
</form>
{% endblock %}

复选框出现在标签文本之后。有没有办法让复选框出现在一行中,这样表单看起来格式更好?或者有没有办法更好地控制表单的布局?我使用了 form.as_table,但是如果我在表中呈现表单,我的 jquery 会中断。

简而言之,我想

(标签)附加上传的 ISO .............................(复选框)

(标签)分离上传的 ISO .............................(复选框)

(标签)提取上传的 ISO .............................(复选框)

当表单被渲染以使复选框都排成一行时,如何更好地控制布局?

谢谢 - 奥利

4

1 回答 1

4

您可以在表单中单独呈现每个字段并控制外观。每个字段都有可以呈现为的标签,{{field.label_tag}}字段输入为{{field}}.

来自Django 表单文档的更多详细信息

<form action="/contact/" method="post">
{% for field in form %}
    <div class="fieldWrapper">
        {{ field.errors }}
        {{ field.label_tag }}: {{ field }}
    </div>
{% endfor %}
<p><input type="submit" value="Send message" /></p>
</form>
于 2012-09-08T12:53:23.997 回答