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

(Django) How to keep input values after form submit

我有一个看法:

我想要的是每当我提交一个表单(if request.POST)无论表单是否有效,输入的值都不会消失。

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

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

您需要return已验证的相同表单,才能return相同的输入内容和表单错误。在定义上下文数据后也重新定位您的 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 没有验证,那么它有一个路由要 returned。