Django MultiValueDictKeyError:处理复选框表单提交
尝试从表单填充对象时,如果表单包含以下内容,则可能会遇到 MultiValueDictKeyError未选中的复选框。此错误源于 HTTP 请求对象中缺少相应的键,因为复选框在未选中时不返回任何值。
要解决此问题,请利用 MultiValueDict 提供的 get 方法(也存在于标准词典中)优雅地检索复选框值。此方法接受一个键(对应于复选框名称)和一个可选的默认值,如果键不存在则返回。
例如,如果 is_private 代表表单中的复选框,则以下行将有效处理选中和未选中的情况:
is_private = request.POST.get('is_private', False)
在这种情况下,如果复选框被选中,is_private 将收到其提交的值;否则,它将默认为 False。
记住,get 方法的一般语法是:
my_var = dict.get(key, default)
以上是当未选中复选框时,如何在 Django 中处理复选框表单提交?的详细内容。更多信息请关注PHP中文网其他相关文章!