当前位置: 首页 > 面试题库 >

django MultiValueDictKeyError错误,我该如何处理

史修明
2023-03-14
问题内容

我正在尝试将对象保存到数据库中,但是抛出MultiValueDictKeyError错误。

问题出在表格内,is_private用一个复选框表示。如果未选中该复选框,则显然不传递任何内容。这就是错误被排除的地方。

我如何正确处理并捕获此异常

该行是

is_private = request.POST['is_private']

问题答案:

使用MultiValueDict的get方法。这在标准字典中也存在,并且是一种在不存在默认值的情况下获取值的方法。

is_private = request.POST.get('is_private', False)

通常,

my_var = dict.get(<key>, <default>)


 类似资料:
  • 问题内容: 我正在尝试将对象保存到数据库中,但是抛出错误。 问题出在表格内,用一个复选框表示。如果未选中该复选框,则显然不传递任何内容。这就是错误被排除的地方。 我如何正确处理并捕获此异常? 该行是 问题答案: 使用t的get方法。这在标准字典中也存在,并且是一种在不存在默认值的情况下获取值的方法。 通常,

  • 问题内容: 我不太确定是否由于尝试执行以下MySQL程序而关闭了与此类似的问题。 在bash命令行上并得到此错误 我该如何解决此问题? 我实际上是从Python程序运行此命令,但将其拉出以尝试在bash命令行上摆弄它。 我已经看到了如何修改my.cnf(本地文件),但是如果可以避免的话,我不希望对全局进行更改。 这是MySQL版本。 问题答案: 如“ 安全问题”中所述: 为了解决这些问题,我们更改

  • 问题内容: 我想派生一个go进程并获取新进程的ID,但是我在或库中看到的只是启动一个新进程。 问题答案: 您应该从包装中获取。 请注意,这是在根本不使用任何线程的情况下发明的,并且一个进程中始终只有一个执行线程,因此分叉是安全的。使用Go,情况完全不同,因为它大量使用OS级线程来为其goroutine调度提供动力。 现在,在Linux上未经修饰的子进程将在所有活动线程中只有一个线程(在父进程中调用

  • 问题内容: 我试图弄清楚如何使用boto3进行正确的错误处理。 我正在尝试创建一个IAM用户: 成功调用create_user后,我得到一个整洁的对象,其中包含API调用的http状态代码和新创建的用户的数据。 例: 这很好。但是,如果失败(例如用户已经存在),我只会得到一个类型为botocore.exceptions.ClientError的对象,其中只有文本可以告诉我出了什么问题。 示例:Cl

  • 问题内容: 如何处理此调用上的etimedout错误? 有没有办法等待更长的时间?还是再次请求远程文件? 究竟是什么会导致此错误?仅超时? 问题答案: 这是由于在给定时间内未收到您的请求响应(通过 请求模块选项)引起的。 基本上首先要捕获该错误,您需要在上注册一个处理程序,因此不会再抛出未处理的错误:。这里还有一些解释。 在处理程序中,您可以检查错误是否为ETIMEDOUT并应用自己的逻辑:。 如

  • 我正在实现一个定制的Kotlin CoroutineScope,它处理通过WebSocket连接接收、处理和响应消息。作用域的生命周期与WebSocket会话相关联,因此只要WebSocket处于打开状态,它就处于活动状态。作为协同程序作用域上下文的一部分,我安装了一个自定义异常处理程序,如果出现未处理的错误,它将关闭WebSocket会话。是这样的: 我惊讶地发现异常处理程序不仅接收异常,而且实