在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中使用sys模板和logging模块获取行号和函数名的方法
Apr 15 Python
使用Node.js和Socket.IO扩展Django的实时处理功能
Apr 20 Python
Python中文竖排显示的方法
Jul 28 Python
安装ElasticSearch搜索工具并配置Python驱动的方法
Dec 22 Python
Python实现通过文件路径获取文件hash值的方法
Apr 29 Python
python 的 scapy库,实现网卡收发包的例子
Jul 23 Python
通过实例简单了解Python中yield的作用
Dec 11 Python
python主线程与子线程的结束顺序实例解析
Dec 17 Python
Django接收照片储存文件的实例代码
Mar 07 Python
记录模型训练时loss值的变化情况
Jun 16 Python
keras中的History对象用法
Jun 19 Python
pytorch 计算ConvTranspose1d输出特征大小方式
Jun 23 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
德生PL450的电路分析和低放电路的改进办法
2021/03/02 无线电
Laravel框架基础语法与知识点整理【模板变量、输出、include引入子视图等】
2019/12/03 PHP
js弹窗返回值详解(window.open方式)
2014/01/11 Javascript
Window.Open如何在同一个标签页打开
2014/06/20 Javascript
Backbone.js 0.9.2 源码注释中文翻译版
2015/06/25 Javascript
js实现改进的仿蓝色论坛导航菜单效果代码
2015/09/06 Javascript
在AngularJS框架中处理数据建模的方式解析
2016/03/05 Javascript
JavaScript对象数组如何按指定属性和排序方向进行排序
2016/06/15 Javascript
JavaScript里 ==与===区别详解
2016/08/16 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
关于HTTP传输中gzip压缩的秘密探索分析
2018/01/12 Javascript
JS复杂判断的更优雅写法代码详解
2018/11/07 Javascript
JS中创建自定义类型的常用模式总结【工厂模式,构造函数模式,原型模式,动态原型模式等】
2019/01/19 Javascript
基于vue实现一个神奇的动态按钮效果
2019/05/15 Javascript
Vue实现微信支付功能遇到的坑
2019/06/05 Javascript
微信小程序 WXML节点信息查询详解
2019/07/29 Javascript
JavaScript获取某一天所在的星期
2019/09/05 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
Vue程序化的事件监听器(实例方案详解)
2020/01/07 Javascript
vue实现图片上传功能
2020/05/28 Javascript
vue实现购物车列表
2020/06/30 Javascript
如何在 Vue 中使用 JSX
2021/02/14 Vue.js
Python生成验证码实例
2014/08/21 Python
python创建和删除目录的方法
2015/04/29 Python
python3.5仿微软计算器程序
2020/03/30 Python
浅析Python函数式编程
2018/10/06 Python
Python模拟键盘输入自动登录TGP
2020/11/27 Python
购买澳大利亚最好的服装和内衣在线:BONDS
2016/10/14 全球购物
公务员个人自我评价分享
2013/11/06 职场文书
硕士研究生个人求职信
2013/12/04 职场文书
《生命的药方》教学反思
2014/04/08 职场文书
三好学生演讲稿范文
2014/04/26 职场文书
财务会计专业自荐书
2014/06/30 职场文书
学会感恩主题班会
2015/08/12 职场文书
js基础语法与maven项目配置教程案例
2021/07/15 Javascript
Java面试题冲刺第十九天--数据库(4)
2021/08/07 Java/Android