在Python的Django框架中获取单个对象数据的简单方法


Posted in Python onJuly 17, 2015

相对列表来说,有些时候我们更需要获取单个的对象, `` get()`` 方法就是在此时使用的:

>>> Publisher.objects.get(name="Apress")
<Publisher: Apress>

这样,就返回了单个对象,而不是列表(更准确的说,QuerySet)。 所以,如果结果是多个对象,会导致抛出异常:

>>> Publisher.objects.get(country="U.S.A.")
Traceback (most recent call last):
  ...
MultipleObjectsReturned: get() returned more than one Publisher --
  it returned 2! Lookup parameters were {'country': 'U.S.A.'}

如果查询没有返回结果也会抛出异常:

>>> Publisher.objects.get(name="Penguin")
Traceback (most recent call last):
  ...
DoesNotExist: Publisher matching query does not exist.

这个 DoesNotExist 异常 是 Publisher 这个 model 类的一个属性,即 Publisher.DoesNotExist。在你的应用中,你可以捕获并处理这个异常,像这样:

try:
  p = Publisher.objects.get(name='Apress')
except Publisher.DoesNotExist:
  print "Apress isn't in the database yet."
else:
  print "Apress is in the database."
Python 相关文章推荐
Python常用模块介绍
Nov 21 Python
python根据开头和结尾字符串获取中间字符串的方法
Mar 26 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
Nov 13 Python
Python 列表(List) 的三种遍历方法实例 详解
Apr 15 Python
Python iter()函数用法实例分析
Mar 17 Python
Pyqt实现无边框窗口拖动以及窗口大小改变
Apr 19 Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 26 Python
解决Python获取字典dict中不存在的值时出错问题
Oct 17 Python
django框架两个使用模板实例
Dec 11 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
May 03 Python
Python socket服务常用操作代码实例
Jun 22 Python
python给视频添加背景音乐并改变音量的具体方法
Jul 19 Python
Python的Django框架中的数据过滤功能
Jul 17 #Python
在Python的Django框架中更新数据库数据的方法
Jul 17 #Python
在Django框架中运行Python应用全攻略
Jul 17 #Python
Python的Django框架中的数据库配置指南
Jul 17 #Python
浅谈python中截取字符函数strip,lstrip,rstrip
Jul 17 #Python
在Django的视图中使用数据库查询的方法
Jul 16 #Python
详解Python的Django框架中的模版继承
Jul 16 #Python
You might like
PHP XML备份Mysql数据库
2009/05/27 PHP
PHP中的array数组类型分析说明
2010/07/27 PHP
PHP CURL获取cookies模拟登录的方法
2013/11/04 PHP
PHP魔术引号所带来的安全问题分析
2014/07/15 PHP
利用PHP获取网站访客的所在地位置
2017/01/18 PHP
Laravel-admin之修改操作日志的方法
2019/09/30 PHP
jquery中的 $(&quot;#jb51&quot;)与document.getElementById(&quot;jb51&quot;) 的区别
2011/07/26 Javascript
js实现连续英文字符自动换行兼容ie6 ie7和firefox
2013/09/06 Javascript
js处理json以及字符串的比较等常用操作
2013/09/08 Javascript
在firefox和Chrome下关闭浏览器窗口无效的解决方法
2014/01/16 Javascript
js判断一个字符串是否包含一个子串的方法
2015/01/26 Javascript
js实现非常简单的焦点图切换特效实例
2015/05/07 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
2015/11/25 Javascript
js将json格式的对象拼接成复杂的url参数方法
2016/05/25 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
2018/02/28 Javascript
详解微信小程序canvas圆角矩形的绘制的方法
2018/08/22 Javascript
使用pm2部署node生产环境的方法步骤
2019/03/09 Javascript
小程序实现订单倒计时功能
2019/04/23 Javascript
Python通过90行代码搭建一个音乐搜索工具
2015/07/29 Python
python中使用PIL制作并验证图片验证码
2018/03/15 Python
python清除字符串中间空格的实例讲解
2018/05/11 Python
python实现的按要求生成手机号功能示例
2019/10/08 Python
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
2016/03/14 HTML / CSS
基于html5绘制圆形多角图案
2016/04/21 HTML / CSS
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
优衣库美国官网:UNIQLO美国
2018/04/14 全球购物
卫生巾广告词
2014/03/18 职场文书
党的群众路线教育实践活动对照检查材料
2014/09/22 职场文书
鲁迅故居导游词
2015/02/05 职场文书
广告业务员岗位职责
2015/02/13 职场文书
个人专业技术总结
2015/03/05 职场文书
学年个人总结范文
2015/03/05 职场文书
幼儿园辞职信
2015/05/13 职场文书
人与自然的观后感
2015/06/18 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书