在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将字符串转换成数组的方法
Apr 29 Python
python实现将html表格转换成CSV文件的方法
Jun 28 Python
使用Python脚本生成随机IP的简单方法
Jul 30 Python
Python的dict字典结构操作方法学习笔记
May 07 Python
老生常谈python函数参数的区别(必看篇)
May 29 Python
基于Django模板中的数字自增(详解)
Sep 05 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
Oct 14 Python
dataframe 按条件替换某一列中的值方法
Jan 29 Python
Python3获取拉勾网招聘信息的方法实例
Apr 03 Python
python字符串切割:str.split()与re.split()的对比分析
Jul 16 Python
python扫描线填充算法详解
Feb 19 Python
Python判断字符串是否为空和null方法实例
Apr 26 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分页函数
2006/10/09 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
功能强大的PHP发邮件类
2016/08/29 PHP
利用PHPExcel实现Excel文件的写入和读取
2017/04/26 PHP
PHP各种常见经典算法总结【排序、查找、翻转等】
2019/08/05 PHP
window.returnValue使用方法示例介绍
2014/07/03 Javascript
简介JavaScript中strike()方法的使用
2015/06/08 Javascript
node.js路径处理方法以及绝对路径详解
2021/03/04 Javascript
jQuery  ready方法实现原理详解
2016/10/19 Javascript
JavaScript中undefined和null的区别
2017/05/03 Javascript
setTimeout与setInterval的区别浅析
2019/03/23 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
小程序如何写动态标签的实现方法
2020/02/05 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
[02:38]2018DOTA2亚洲邀请赛赛前采访-VGJ.T
2018/04/03 DOTA
[00:14]PWL:老朋友Mushi拍VLOG与中国玩家问好
2020/11/04 DOTA
Python基于PycURL实现POST的方法
2015/07/25 Python
使用Mixin设计模式进行Python编程的方法讲解
2016/06/21 Python
Python实现的简单dns查询功能示例
2017/05/24 Python
Python最火、R极具潜力 2017机器学习调查报告
2017/12/11 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
Python学习笔记之变量、自定义函数用法示例
2019/05/28 Python
python字典的值可以修改吗
2020/06/29 Python
keras:model.compile损失函数的用法
2020/07/01 Python
CSS3实现菜单悬停效果
2020/11/17 HTML / CSS
波兰补充商店:Muscle Power
2018/10/29 全球购物
德国家具购物网站:Möbel Höffner
2019/08/26 全球购物
五一活动标语
2014/06/30 职场文书
欢迎家长标语
2014/10/08 职场文书
婚前财产协议书范本
2014/10/19 职场文书
简单的辞职信模板
2015/05/12 职场文书
民事辩护词范文
2015/05/21 职场文书
2016年六一文艺汇演开幕词
2016/03/04 职场文书
七年级作文之下雨天
2019/12/23 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
opencv检测动态物体的实现
2021/07/21 Python