异常处理三原则_异常状态

异常处理三原则_异常状态DRF框架的默认异常处理设置如下:默认使用模块下的函数进行异常处理自定义异常处理可以自定义异常处理函数,在DRF框架默认异常处理函数的基础上,添加一些其他的异常处理,比如数据库处理1)自定

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

DRF框架的默认异常处理设置如下:

REST_FRAMEWORK = {
    'EXCEPTION_HANDLER': 'rest_framework.views.exception_handler'
}

默认使用rest_framework.views模块下的exception_handler函数进行异常处理

异常处理三原则_异常状态

自定义异常处理

可以自定义异常处理函数,在DRF框架默认异常处理函数的基础上,添加一些其他的异常处理,比如数据库处理
1)自定义异常处理函数

from rest_framework.views import exception_handler as drf_exception_handler
from rest_framework import status
from django.db import DatabaseError

def exception_handler(exc, context):
    # 先调用DRF框架的默认异常处理函数
    response = drf_exception_handler(exc, context)

    if response is None:
        # 补充数据库的异常处理
        if isinstance(exc, DatabaseError):
            response = Response({'detail': '数据库错误'}, status=status.HTTP_507_INSUFFICIENT_STORAGE)

    return response

2)在settings.py配置文件中修改DRF框架的异常处理函数

REST_FRAMEWORK = {
    'EXCEPTION_HANDLER': 'booktest.utils.exceptions.exception_handler'
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166553.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Navicat for MySQL 使用SSH方式链接远程数据库(二)

    Navicat for MySQL 使用SSH方式链接远程数据库(二)

    2021年10月19日
    31
  • 新出台的治理iMessage垃圾短信的规则

    新出台的治理iMessage垃圾短信的规则

    2022年1月21日
    57
  • phpstorm PhpStorm 2021.3.20 激活码 3月最新注册码

    phpstorm PhpStorm 2021.3.20 激活码 3月最新注册码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    34
  • 信道估计LS和MMSE_盲信道估计

    信道估计LS和MMSE_盲信道估计信道估计之LS在无线通信系统中,系统的性能主要受到无线信道的制约。基站和接收机之间的传播路径复杂多变,从简单的视距传输到受障碍物反射、折射、散射影响的传播。在无线传输环境中,接收信号会存在多径时延,时间选择性衰落和频域偏移,多径时延会带来符号串扰(ISI),可以通过插入保护间隔来减少;而由于时间选择性衰落和频率偏移带来的子载波干扰(ICI),除了依靠时频偏补偿来纠正外,还需要对信道进行估计,进一步进行补偿,即需要进行频域均衡和时域均衡。因此,信号估计性能的好坏直接影响接收信号的解调结果。这里对均衡技术就不

    2022年10月28日
    0
  • 解决Windows有网络连接但是显示“无Internet”的问题

    引子最近电脑莫名其妙地出现了可以正常上网,但是任务栏上的网络图标显示“无Internet”的问题。如果不使用微软账户的话,这个问题其实没什么影响,但是如果使用微软账户,这个问题会导致所有与微软账户相关的软件无法登录,比如Microsoft365和Outlook邮箱。在网上找了很多帖子都没有解决,最终通过相关帖子的学习提供一种解决该问题的思路,如果有用,请不要吝惜你的点赞????如果你有更好的解决方案,欢迎评论分享思路要想知道这个问题的原因,首先我想到的是需要了解Windows网络感知的原理。通过查

    2022年4月7日
    375
  • MyEclipse安装SVN插件[通俗易懂]

    MyEclipse安装SVN插件[通俗易懂]1.下载SVN插件下载地址:链接:https://pan.baidu.com/s/1SCB9U9VYUH9Rh9NzmzRERA提取码:9e9e下载完解压即可2.在MyEclipse中安装SVN插件1.找到MyEclipse在安装目录下的dropins文件夹2.在driopins文件夹内新建一个SVN文件夹3.将解压文件内的这两个文件夹复制到driopins文件夹下的SV…

    2022年7月21日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号