0
  1. 我知道您需要将formfrom views.py 传递到模板中才能发生这种情况。我已经在 views.py 中使用了处理表单的视图:

    if request.method == 'POST':
        stuff
    else:
        form = MyForm()
    
  2. 但我也想使用 CSS 自定义表单的外观,所以不是使用{{ form.as_p }}或类似的,我的模板中的表单看起来像这样(只发布名称字段和提交按钮以保持简短):

    <div class="fieldWrapper">
        <label class="field" for="id_name">Name*:</label>
        {{ form.name.errors }}
        <input class="box" type="text" name="name" id="id_name" maxlength="100"/>
    </div>
    
    <input id="submit_button" type="submit" value="Submit" />
    
    • 在模板中使用建议{{ form.name }}#id_name{ css stuff }.fieldwrapper input{ css stuff}(每个字段周围都有一个 fieldwrapper div)似乎不起作用,即使我已经验证在我的浏览器{{ form.name }}中确实有。id="id_name"

对于我应该采取什么方法来解决这个问题,我真的没有任何线索。目前,我的用户面临的问题是,如果他们提交的表单验证失败,则必须从头开始重新填充整个表单。

我正在使用 Django 1.3.7;PythonAnywhere 上的 Python 2.7。

4

1 回答 1

0

您可以使用{{form.name.value}},当重新显示无效表单时,它将重新填充为特定字段输入的值。

<input class="box" type="text" name="name" id="id_name" maxlength="100" value="{{form.name.value}}"/>
于 2013-08-04T17:15:35.350 回答