2013-03-13 52 views
2

我有一个相当长的表单,用户不能总是一次完成。我希望用户能够点击按钮并保存表单以便稍后完成。我的第一个想法是简单地保存表格,并以某种方式将其标记为不完整。然而,我似乎无法解决这样一个事实,即不完整的表格是无效的,不能被迫保存。例如,如果表单末尾附近的必填字段为空,即使跳过form.is_valid()步骤,表单也不能保存到数据库。保存不完整的Django表单

是否有另一种方法来临时保存表单的数据?另外,我知道这个问题以前有人问,但恐怕这个答案是不是非常有帮助:Django Save Incomplete Progress on Form

更新 谢谢大家的答复为止。下面的一些答案让我意识到我从原始问题中省略了一个细节。我需要能够让用户选择是否在返回时完成表单。用户每天输入几次信息。他们可能会回到没有准备好完成表单项目A的表单,而是需要从头开始填写表单项目B.所以,用自己最后一个不完整的表单自动填充表单不会有什么用。对不起,当我发布原始问题时,这并没有发生。

+0

基于字典的方法不怎么有用?有什么关于你想更好地理解的方法吗? – Brandon 2013-03-13 18:55:50

+0

对上一个问题的回答很清楚。按照链接预订选择的答案了解更多详情。 – Scorpil 2013-03-13 19:02:52

+0

你的意思是海报的原创想法是创建一个字段的字典,它的价值?这张海报对这个想法听起来并不太热衷,没有人插嘴说:“不,那可行。”我得到了关于制作词典的部分,但我想我不知道在哪里存储该词典。你是否以某种方式将其写入数据库,或者是一个搁置文件,您可以将其写入目录并稍后回读?如果我长期知道保存字典的好方法,我当然可以试试。 – 2013-03-13 19:03:51

回答

0

如果您使用django-merlin,您可以将长屁股形式分成许多较小的形式,并且每个以前的形式将保存在用户的会话中,只是等待它们回来。如果他们通过向导的基地网址离开并回到它,他们将在他们离开的同一个地方恢复。