有没有办法通过点击按钮将Django表单字段上的空白属性更改为False



我正在构建一个评审表单,该表单将发布到数据库中的单个模型中。此表格将有多个部分,每个部分都有自己的一组问题。我希望用户能够完成一个部分,然后点击提交按钮,保存进度并将其重定向到下一个部分。从本质上讲,我想为审查创建一个正在进行的状态,因为所有部分都完成了,用户可以点击一个完整的按钮,对整个表单进行验证。但是,我不想允许将信息发布到尚未清理的数据库中。

我一直在思考这个问题,试图找出我需要做什么,并相信最好的办法是在最后一页上有一个完整的按钮,将表单字段的空白更改为False。我相信这将允许我填写每个表格并将其发布到数据库中,因为所有字段都将作为可选字段开始,但对于特定的模型实例,单击末尾的按钮将进行更改,使所有字段都是必需的,从而运行验证器以确保表格完整。我相信这也将允许保存进度,并在完成表格时中断后返回。

有人能提供任何关于这是否可能的见解吗?如果是这样的话,有人能为我提供指导吗?

您可以将未验证的数据存储到用户的会话中。最后一个阶段从会话中提取所有以前的步骤数据进行验证。IIRC Django表单向导就是这样做的,所以你不必写它

相反,我可能会在客户端使用一个大表单(可能是Crispy(和一些客户端伪提交按钮来隐藏大表单的一部分并显示下一部分。最后一个是真正的提交,如果有错误,会重新显示整个内容。

最新更新