(Django) 如何在表单提交后保留输入值

问题描述 投票:0回答:2

我有一个看法:

我想要的是,每当我提交表单(

if request.POST
)时,无论表单是否有效,输入的值都不会消失。

输入

event_form.description, event_form.event_type, event_form.dfkl_id
在单击提交后保留其值,但由于某种原因,日期时间选择器的值消失了。

如何让datetimepickers中的输入值在提交表单时不消失?

django django-views django-forms django-templates
2个回答
1
投票

您需要返回与验证过的相同的表单,才能返回相同的输入内容和表单错误。定义上下文数据后,还要重新定位您的

POST
请求 (在
data
之后)
像这样:

if request.POST:
    event_form = EventForm(request.POST, instance=event)
    if event_form.is_valid():
        [... validate logic ...]
        return HttpResponseRedirect('/events')
    data.update({'event_form':event_form})
    return render(request, template_name, data) 

现在如果

event_form
不验证,那么它有一条要返回的路线。


0
投票

如果您想在表单提交后保留输入值,请按照此步骤操作

这对我的情况有效。

© www.soinside.com 2019 - 2024. All rights reserved.