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获取beautifulphoto随机某图片代码实例
Dec 18 Python
python的tkinter布局之简单的聊天窗口实现方法
Sep 03 Python
python实现简易通讯录修改版
Mar 13 Python
Python实现针对给定单链表删除指定节点的方法
Apr 12 Python
python实现彩色图转换成灰度图
Jan 15 Python
python识别图像并提取文字的实现方法
Jun 28 Python
python读写csv文件并增加行列的实例代码
Aug 01 Python
Django中自定义admin Xadmin的实现代码
Aug 09 Python
Python二元赋值实用技巧解析
Oct 25 Python
Pandas+Matplotlib 箱式图异常值分析示例
Dec 09 Python
python GUI库图形界面开发之PyQt5开发环境配置与基础使用
Feb 25 Python
python实现单张图像拼接与批量图片拼接
Mar 23 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内核之php in array
2015/11/10 PHP
javascript 最常用的10个自定义函数[推荐]
2009/12/26 Javascript
jQuery 图片切换插件(代码比较少)
2012/05/07 Javascript
JavaScript中将一个值转换为字符串的方法分析[译]
2012/09/21 Javascript
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
js给网页加上背景音乐及选择音效的方法
2015/03/03 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
jQuery焦点图左右转换效果
2016/12/12 Javascript
canvas雪花效果核心代码分享
2017/02/19 Javascript
微信小程序网络请求的封装与填坑之路
2017/04/01 Javascript
浅谈Vue父子组件和非父子组件传值问题
2017/08/22 Javascript
利用JS实现scroll自定义滚动效果详解
2017/10/17 Javascript
详解Eslint 配置及规则说明
2018/09/10 Javascript
nvm、nrm、npm 安装和使用详解(小结)
2019/01/17 Javascript
vue项目中使用scss的方法步骤
2019/05/16 Javascript
微信小程序实现订单倒计时
2020/11/01 Javascript
Vue商品控件与购物车联动效果的实例代码
2019/07/21 Javascript
VUE:vuex 用户登录信息的数据写入与获取方式
2019/11/11 Javascript
Vue列表循环从指定下标开始的多种解决方案
2020/04/08 Javascript
深入webpack打包原理及loader和plugin的实现
2020/05/06 Javascript
Python算法之求n个节点不同二叉树个数
2017/10/27 Python
火车票抢票python代码公开揭秘!
2018/03/08 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
解决python Markdown模块乱码的问题
2019/02/14 Python
PyQt5 实现给窗口设置背景图片的方法
2019/06/13 Python
python数据处理之如何选取csv文件中某几行的数据
2019/09/02 Python
Python操作Excel的学习笔记
2021/02/18 Python
英国骑行、跑步、游泳、铁人三项运动装备专卖店:Wiggle
2016/08/23 全球购物
工地安全质量标语
2014/06/07 职场文书
人事经理岗位职责范本
2014/08/04 职场文书
离职证明范本(5篇)
2014/09/19 职场文书
2015新年联欢晚会开场白
2014/12/14 职场文书
格林童话读书笔记
2015/06/30 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
《夹竹桃》教学反思
2016/02/23 职场文书