我对我的Django网站的形式做了一些改变,例如:这些复选框的一些值被改变了。一个用户在我修改之前已经打开了表单,他在做了一些修改之后提交了表单。会发生什么?在我安装了Django 2.2和Chrome 116.0.5845.110的本地机器上,在我点击保存按钮后,表单页面被刷新了。谢谢你,谢谢你可以忽略吼叫,因为它可能与我的代码有关。(The刷新的表单是不期望的,其中包含新的更改,但有点不同。如果我打开表单页面的URL到一个新的选项卡,一切正常)
csga3l581#
一个用户在我修改之前已经打开了表单,他在做了一些修改之后提交了表单。会发生什么?这取决于旧表单的数据是否与新表单“* 兼容 *”。在这种情况下,它将被处理,否则,如果您创建了一个适当的视图来验证表单,然后重新呈现它,它将再次呈现模板,现在是新表单。如果新表单的所有必填字段都在旧表单中填写,则数据是兼容的,因此具有相同的name=".."项。对于旧表单中未Map到新表单的元素上的项,这些项将被忽略,对于新表单中未Map到旧表单中的项但不是必填项的项,将填写空白值,或复选框将被视为False。
name=".."
False
1条答案
按热度按时间csga3l581#
一个用户在我修改之前已经打开了表单,他在做了一些修改之后提交了表单。会发生什么?
这取决于旧表单的数据是否与新表单“* 兼容 *”。在这种情况下,它将被处理,否则,如果您创建了一个适当的视图来验证表单,然后重新呈现它,它将再次呈现模板,现在是新表单。
如果新表单的所有必填字段都在旧表单中填写,则数据是兼容的,因此具有相同的
name=".."
项。对于旧表单中未Map到新表单的元素上的项,这些项将被忽略,对于新表单中未Map到旧表单中的项但不是必填项的项,将填写空白值,或复选框将被视为False
。