django模板添加旧表单数据

Posted

技术标签:

【中文标题】django模板添加旧表单数据【英文标题】:django template add old form data 【发布时间】:2013-12-27 05:44:57 【问题描述】:

我正在制作一个表格,但是当数据无效时,再次加载页面时它会清空该字段,我该如何解决这个问题? 我的看法:

def create_country(request):

    if request.POST:
        country_form = CountryForm(request.POST)
        if country_form.is_valid():
            country_form.save()
            return HttpResponseRedirect(reverse('country'))

        else:
            return render(request, 'create_country.html', 'country_form': country_form)

    country_form = CountryForm()
    return render(request, 'create_country.html', 'country_form': country_form)

还有我的模板:

<div>
    <center>
        <h2>Create a new country</h2>
    </center>
    <form action="% url 'create_country' %" method="post">% csrf_token %
        <table>
            <tr>
                <b> country_form.non_field_errors </b>
            </tr>
            <tr>
                <b> country_form.name.errors </b>
            </tr>
            <tr>
                <td><label for="id_name">Name:</label></td>
                <td><input id="id_name" type="text" name="name" size= "25" maxlength="127" /></td>
            </tr>
            <tr>
                <b> country_form.flavor.errors </b>
            </tr>
            <tr>
                <td><label for="id_flavor">Flavor Text:</label></td>
                <td><textarea style="width: 300px; height: 200px;" id="id_flavor" type="text" name="flavor" maxlength="511"></textarea></td>
            </tr>
            <tr>
                <td></td>
                <td style="float: right;"><input type="submit" value="add country" /></td>
            </tr>
        </table>
    </form>
</div>

如何在帖子返回无效后将旧数据添加回表单中?

【问题讨论】:

***.com/questions/2236691/… Jep 好像解决了,谢谢 【参考方案1】:

如果basic form layouts 像 form form.as_ul 没有按照您想要的方式呈现,那么请仔细阅读 customizing the form template 上的文档。使用它,您应该能够使用 CSS 以您想要的方式呈现表单。您可以在表单字段中指定 widget 以设置所需的任何属性。

尽量避免在模板中手动呈现表单输入。它是重复的,并且增加了出错的机会。

【讨论】:

该死的,我什至不知道,这是我明天的作业:)谢谢

以上是关于django模板添加旧表单数据的主要内容,如果未能解决你的问题,请参考以下文章

Django:在模板中呈现表单字段时添加 CSS 类

带有 ReactJS 的 Django 表单

django 模板:如何知道表单字段类型并根据字段类型添加任何按钮

如何将表单控件添加到 Django 表单?

如何将引导类添加到模板中的 Django CreateView 表单字段?

如何在 django 模型表单中添加自定义字段?