django 数据库 get_or_create函数返回值是tuple的问题


Posted in Python onMay 15, 2020

get_or_create函数比较好用。

如果查询到就返回,如果没查询到就向数据库加入新的对象。

e.g.

size = Size.objects.get_or_create(sizeName=size_text)

注意:返回的是tuple,:(对象, 是否是创建的)

e.g. (size, created)

补充知识:Django update_or_create 注意事项

需求: model 修改数据库数据,数据存在则更新,不存在则保存

update_or_create 用法:

update_or_create(defaults=None, **kwargs)

kwargs: 来更新对象或创建一个新的对象。

defaults: 是由 (field, value) 对组成的字典,用于更新对象。

返回一个由 (object, created)组成的元组,

object: 是一个创建的或者是被更新的对象,

created: 是一个标示是否创建了新的对象的布尔值。

update_or_create: 方法通过给出的kwarg

try:
  obj = Person.objects.get(first_name='John', last_name='Lennon')
  for key, value in updated_values.iteritems():
    setattr(obj, key, value)
  obj.save()
except Person.DoesNotExist:
  updated_values.update({'first_name': 'John', 'last_name': 'Lennon'})
  obj = Person(**updated_values)
  obj.save()
# 如果模型的字段数量较大的话,这种模式就变的非常不易用。上面的示例可以用 update_or_create() 重写:
obj, created = Person.objects.update_or_create(
  first_name='John', last_name='Lennon', defaults=updated_values)

以上这篇django 数据库 get_or_create函数返回值是tuple的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
linux系统使用python监测网络接口获取网络的输入输出
Jan 15 Python
Python实现Youku视频批量下载功能
Mar 14 Python
Python文件操作基本流程代码实例
Dec 11 Python
基于Python实现的微信好友数据分析
Feb 26 Python
Python3.6笔记之将程序运行结果输出到文件的方法
Apr 22 Python
Python3中详解fabfile的编写
Jun 24 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
Dec 11 Python
Python实现查找二叉搜索树第k大的节点功能示例
Jan 24 Python
详解用Python实现自动化监控远程服务器
May 18 Python
Django+uni-app实现数据通信中的请求跨域的示例代码
Oct 12 Python
python 计算方位角实例(根据两点的坐标计算)
Jan 17 Python
Windows10+anacond+GPU+pytorch安装详细过程
Mar 24 Python
重写django的model下的objects模型管理器方式
May 15 #Python
Python基于pip实现离线打包过程详解
May 15 #Python
Django在Model保存前记录日志实例
May 14 #Python
django 连接数据库出现1045错误的解决方式
May 14 #Python
Django ORM filter() 的运用详解
May 14 #Python
Django设置Postgresql的操作
May 14 #Python
numpy矩阵数值太多不能全部显示的解决
May 14 #Python
You might like
phpmyadmin的#1251问题
2006/11/25 PHP
php出现Cannot modify header information问题的解决方法大全
2008/04/09 PHP
PHP json_encode() 函数详解及中文乱码问题
2015/11/05 PHP
浅谈php和js中json的编码和解码
2016/10/24 PHP
php变量与数组相互转换的方法(extract与compact)
2016/12/02 PHP
PHP中error_reporting函数用法详细介绍
2017/06/11 PHP
PHP实现的文件浏览器功能简单示例
2019/09/12 PHP
php报错502badgateway解决方法
2019/10/11 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
关于实现代码语法标亮 dp.SyntaxHighlighter
2007/02/02 Javascript
javascript 去字符串空格终极版(支持utf8)
2009/11/14 Javascript
jQuery中extend函数详解
2015/07/13 Javascript
jquery模拟实现鼠标指针停止运动事件
2016/01/12 Javascript
解决js函数闭包内存泄露问题的办法
2016/01/25 Javascript
JS实现简易的图片拖拽排序实例代码
2017/06/09 Javascript
node中使用es5/6以及支持性与性能对比
2017/08/11 Javascript
vue3.0 CLI - 2.3 - 组件 home.vue 中学习指令和绑定
2018/09/14 Javascript
JavaScript数据结构与算法之检索算法实例分析【顺序查找、最大最小值、自组织查询】
2019/02/22 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
简单谈谈Python中的几种常见的数据类型
2017/02/10 Python
python如何对实例属性进行类型检查
2018/03/20 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
2018/03/29 Python
浅述python中深浅拷贝原理
2018/09/18 Python
Python 正则表达式匹配字符串中的http链接方法
2018/12/25 Python
查看python安装路径及pip安装的包列表及路径
2019/04/03 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
2019/05/13 Python
PyQt5 如何让界面和逻辑分离的方法
2020/03/24 Python
python实现发送带附件的邮件代码分享
2020/09/22 Python
HTML5 Web Database 数据库的SQL语句的使用方法
2012/12/09 HTML / CSS
意大利简约的休闲品牌:Aspesi
2018/02/08 全球购物
俄罗斯金苹果网上化妆品和香水商店:Goldapple
2019/12/01 全球购物
家长给学校的建议书
2014/05/15 职场文书
班级体育活动总结
2014/07/05 职场文书
中学生旷课检讨书2篇
2014/10/09 职场文书
安全学习心得体会范文
2016/01/18 职场文书
使用nginx配置访问wgcloud的方法
2021/06/26 Servers