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刷投票的脚本实现代码
Nov 08 Python
Python multiprocessing模块中的Pipe管道使用实例
Apr 11 Python
在Python下使用Txt2Html实现网页过滤代理的教程
Apr 11 Python
python获取当前日期和时间的方法
Apr 30 Python
windows系统下Python环境的搭建(Aptana Studio)
Mar 06 Python
python利用正则表达式搜索单词示例代码
Sep 24 Python
Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法
Sep 23 Python
浅析Python数字类型和字符串类型的内置方法
Dec 22 Python
Python qrcode 生成一个二维码的实例详解
Feb 12 Python
Python @property及getter setter原理详解
Mar 31 Python
python导入库的具体方法
Jun 18 Python
python 发送邮件的示例代码(Python2/3都可以直接使用)
Dec 03 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
php 方便水印和缩略图的图形类
2009/05/21 PHP
PHP5与MySQL数据库操作常用代码 收集
2010/03/21 PHP
php连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
PHP 7的一些引人注目的新特性简单介绍
2015/11/08 PHP
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
2009/04/07 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
HTML长文本截取含有HTML代码同样适用的两种方法
2013/07/31 Javascript
Extjs4实现两个GridPanel之间数据拖拽功能具体方法
2013/11/21 Javascript
JS对文本框值的判断示例
2014/03/10 Javascript
推荐8款jQuery轻量级树形Tree插件
2014/11/12 Javascript
Jsonp post 跨域方案
2015/07/06 Javascript
jQuery实现点击水纹波动动画
2016/04/10 Javascript
ubuntu编译nodejs所需的软件并安装
2017/09/12 NodeJs
NodeJS加密解密及node-rsa加密解密用法详解
2018/10/12 NodeJs
JavaScript实现表单注册、表单验证、运算符功能
2018/10/15 Javascript
使用webpack搭建vue项目及注意事项
2019/06/10 Javascript
vuex + keep-alive实现tab标签页面缓存功能
2019/10/17 Javascript
vue cli4下环境变量和模式示例详解
2020/04/09 Javascript
[49:13]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第一局
2016/02/27 DOTA
[00:52]DOTA2齐天大圣预告片
2016/08/13 DOTA
Python实现的检测web服务器健康状况的小程序
2014/09/17 Python
简单介绍Python中的filter和lambda函数的使用
2015/04/07 Python
Python 判断 有向图 是否有环的实例讲解
2018/02/01 Python
python爬取指定微信公众号文章
2018/12/20 Python
Python利用字典破解WIFI密码的方法
2019/02/27 Python
pyqt5实现登录界面的模板
2020/05/30 Python
np.random.seed() 的使用详解
2020/01/14 Python
python圣诞树编写实例详解
2020/02/13 Python
高级编程求职信模板
2014/02/16 职场文书
品质主管岗位职责
2014/03/16 职场文书
设计专业自荐信
2014/06/19 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
公司考勤管理制度
2015/08/04 职场文书
python3实现常见的排序算法(示例代码)
2021/07/04 Python
Java多线程并发FutureTask使用详解
2022/06/28 Java/Android
Go语言测试库testify使用学习
2022/07/23 Golang