Django 异常2024 年 8 月 29 日 | 阅读 2 分钟 异常是指导致程序失败的异常事件。 为了处理这种情况,Django 使用它自己的异常类,并且还支持所有核心 Python 异常。 Django 核心异常类在 django.core.exceptions 模块中定义。此模块包含以下类。 Django 异常类Exception | 描述 |
---|
AppRegistryNotReady | 在应用程序加载过程之前尝试使用模型时引发此异常。 | ObjectDoesNotExist | DoesNotExist 异常的基类。 | EmptyResultSet | 如果查询没有返回任何结果,则会引发此异常。 | FieldDoesNotExist | 当请求的字段不存在时,引发此异常。 | MultipleObjectsReturned | 如果查询仅期望一个对象,但返回了多个对象,则会引发此异常。 | SuspiciousOperation | 当用户执行了从安全角度来看应被视为可疑的操作时,引发此异常。 | PermissionDenied | 当用户无权执行所请求的操作时,引发此异常。 | ViewDoesNotExist | 当请求的视图不存在时,由 django.urls 引发。 | MiddlewareNotUsed | 当服务器配置中未使用中间件时,引发此异常。 | ImproperlyConfigured | 当 Django 在某种程度上配置不当时,会引发 ImproperlyConfigured 异常。 | FieldError | 当模型字段出现问题时,会引发此异常。 | ValidationError | 当数据验证失败时,会引发此异常,用于表单或模型字段验证。 |
Django URL 解析器异常这些异常在 django.urls 模块中定义。 Exception | 描述 |
---|
Resolver404 | 当传递给 resolve() 函数的路径未映射到视图时,会引发此异常。 | NoReverseMatch | 当无法根据提供的参数在 URLconf 中标识匹配的 URL 时,会引发此异常。 |
Django 数据库异常以下异常在 django.db 模块中定义。 Exception | 描述 |
---|
DatabaseError | 当数据库不可用时发生。 | IntegrityError | 当执行插入查询时发生。 | DataError | 当与数据相关的问题进入数据库时,引发此异常。 |
Django Http 异常以下异常在 django.http 模块中定义。 Exception | 描述 |
---|
UnreadablePostError | 当用户取消上传时,引发此异常。 |
Django 事务异常事务异常在 django.db.transaction 中定义。 Exception | 描述 |
---|
TransactionManagementError | 引发此异常是用于与数据库事务相关的所有问题。 |
Django 异常示例假设,我们要获取 id = 12 的员工记录,我们的视图函数将如下所示。如果未找到数据,则会引发 DoesNotExist 异常。 这是 Django 的内置异常。 // views.py // urls.py 它显示以下异常,因为在 id 12 处没有可用的记录。 输出  我们可以使用 try 和 except 来处理它,现在让我们处理此异常。 // Views.py 输出 
|