django ObjectDoesNotExist 和 DoesNotExist的用法


Posted in Python onJuly 09, 2020

举例吧,这样更容易看的懂。

例1:

from django.core.exceptions import ObjectDoesNotExist
try:
  pe = Plant.objects.get(id=12873)
except ObjectDoesNotExist:
  print "uuuu"
uuuu
# 我随意找了一个id=12873的对象来查询,当然,数据库里没有这个id,可以看到结果正常的打印出来

例2:

try:
  pe = Plant.objects.get(id=12873)
except Plant.DoesNotExist:
  print "rrr"
rrr
# 结果也如期打印,那么来看看model的属性
dir(Plant) 
['DoesNotExist',
 'MultipleObjectsReturned',
 '__class__',
 '__delattr__',
 '__dict__',
 '__doc__',
 ......
# DoesNotExist正在其中

总结:ObjectDoesNotExist 和 DoesNotExist 表达的意思是相同的,只是写法不同,一个需要导入,一个是model的属性,如何使用看大家的个人习惯就好。

补充知识:Django入门:DoesNotExist: User matching query does not exist.

先说说引发该问题的具体代码

User.objects.filter(username='sss').get().username

当在py脚本中使用以上代码进行username是否等于“sss”判断时,如果搜索username的值等于“sss”时,其返回正确的结果,但如果搜索中不存在“sss”时,会返回如标题的错误(DoesNotExist: User matching query does not exist.),程序终止运行。终止运行意味着后面的代码不再被执行,故而得不到自己想要的结果。

由此问题可以延伸到:遇到同类问题可以怎么解决:

可以使用try…except…语句将可能会导致程序终止的语句包涵其中,具体写法如下:

try:
 User.objects.filter(username=username).get().username
except:
 pass

附:try…except…语句是一个用来异常处理用法,即:当所有可能会导致程序异常点都可以使用try…except…引导程序

以上这篇django ObjectDoesNotExist 和 DoesNotExist的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现对list做减法操作介绍
Jan 09 Python
简洁的十分钟Python入门教程
Apr 03 Python
matplotlib绘制符合论文要求的图片实例(必看篇)
Jun 02 Python
python matplotlib绘图,修改坐标轴刻度为文字的实例
May 25 Python
对python文件读写的缓冲行为详解
Feb 13 Python
django中media媒体路径设置的步骤
Nov 15 Python
新手学习Python2和Python3中print不同的用法
Jun 09 Python
在django中查询获取数据,get, filter,all(),values()操作
Aug 09 Python
Python函数__new__及__init__作用及区别解析
Aug 31 Python
详解python模块pychartdir安装及导入问题
Oct 22 Python
Python+uiautomator2实现自动刷抖音视频功能
Apr 29 Python
分析Python感知线程状态的解决方案之Event与信号量
Jun 16 Python
浅谈优化Django ORM中的性能问题
Jul 09 #Python
Python单元测试及unittest框架用法实例解析
Jul 09 #Python
python 抓取知乎指定回答下视频的方法
Jul 09 #Python
Django ORM判断查询结果是否为空,判断django中的orm为空实例
Jul 09 #Python
Python Selenium模块安装使用教程详解
Jul 09 #Python
OpenCV 使用imread()函数读取图片的六种正确姿势
Jul 09 #Python
django模型类中,null=True,blank=True用法说明
Jul 09 #Python
You might like
德生BCL3000的电路分析和打磨
2021/03/02 无线电
php下尝试使用GraphicsMagick的缩略图功能
2011/01/01 PHP
php INI配置文件的解析实现分析
2011/01/04 PHP
PHP简单实现数字分页功能示例
2016/08/24 PHP
js页面跳转的常用方法整理
2013/10/18 Javascript
JavaScript中的函数重载深入理解
2014/08/04 Javascript
JavaScript使用yield模拟多线程的方法
2015/03/19 Javascript
JavaScript使用push方法添加一个元素到数组末尾用法实例
2015/04/06 Javascript
Bootstrap每天必学之下拉菜单
2015/11/25 Javascript
jQuery点击输入框显示验证码图片
2016/05/19 Javascript
每日十条JavaScript经验技巧(二)
2016/06/23 Javascript
微信小程序 登陆流程详细介绍
2017/01/17 Javascript
走进javascript——不起眼的基础,值和分号
2017/02/24 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
2017/03/16 Javascript
Nodejs进阶:express+session实现简易登录身份认证
2017/04/24 NodeJs
react-native动态切换tab组件的方法
2018/07/07 Javascript
js基于canvas实现时钟组件
2021/02/07 Javascript
python实现八大排序算法(2)
2017/09/14 Python
Python 面试中 8 个必考问题
2018/11/16 Python
python调用虹软2.0第三版的具体使用
2019/02/22 Python
python定时按日期备份MySQL数据并压缩
2019/04/19 Python
在python3中实现更新界面
2020/02/21 Python
python爬虫使用requests发送post请求示例详解
2020/08/05 Python
支持IE8的纯css3开发的响应式设计动画菜单教程
2014/11/05 HTML / CSS
CSS3 Notes: -webkit-box-reflect实现倒影的实例
2016/12/08 HTML / CSS
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
芬兰灯具网上商店:Nettilamppu.fi
2018/06/30 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
迪卡侬印尼体育用品商店:Decathlon印尼
2020/03/11 全球购物
便利店的创业计划书
2014/01/15 职场文书
给国外客户的邀请函
2014/01/30 职场文书
业务总经理岗位职责
2014/02/03 职场文书
简易离婚协议书范本
2014/10/24 职场文书
2015选调生工作总结
2015/07/24 职场文书
基于Java的MathML转图片的方法(示例代码)
2021/06/23 Java/Android
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技