绕过Django表单新实例的验证
我遇到了一种情况,我们想在注册的第二页自动填写一些表单数据。我在想有没有办法在只传递几个字段的情况下,跳过整个表单的验证。
我们有这样的代码:
form = NewForm(request.POST)
在这里,request.POST 只包含 NewForm() 中的一部分字段。所以页面加载后,会反馈说有些字段还没有填写。
这一切都是在第二页的 GET 请求中发生的。
有没有办法做到类似这样的事情...
form = NewForm(request.POST, validate=False)
1 个回答
6
如果你要传入初始值,应该使用 initial
这个参数,而不是 data
(也就是第一个位置参数)。这样做不会触发验证。
form = NewForm(initial=dict_of_field_values)