对django 模型 unique together的示例讲解


Posted in Python onAugust 06, 2019

unique_together

这个元数据是非常重要的一个!它等同于数据库的联合约束!

举个例子,假设有一张用户表,保存有用户的姓名、出生日期、性别和籍贯等等信息。要求是所有的用户唯一不重复,可现在有好几个叫“张伟”的,如何区别它们呢?(不要和我说主键唯一,这里讨论的不是这个问题)

我们可以设置不能有两个用户在同一个地方同一时刻出生并且都叫“张伟”,使用这种联合约束,保证数据库能不能重复添加用户(也不要和我谈小概率问题)。在Django的模型中,如何实现这种约束呢?

使用unique_together,也就是联合唯一!

比如:

unique_together = (('name', 'birth_day', 'address'),)

这样,哪怕有两个在同一天出生的张伟,但他们的籍贯不同,也就是两个不同的用户。一旦三者都相同,则会被Django拒绝创建。这一元数据经常被用在admin后台,并且强制应用于数据库层面。

unique_together接收一个二维的元组((xx,xx,xx,...),(),(),()...),每一个元素都是一个元组,表示一组联合唯一约束,可以同时设置多组约束。为了方便,对于只有一组约束的情况下,可以简单地使用一维元素,例如:

unique_together = ('name', 'birth_day', 'address')

联合唯一无法作用于普通的多对多字段。

以上这篇对django 模型 unique together的示例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 正则表达式入门(中级篇)
Dec 07 Python
Python登录并获取CSDN博客所有文章列表代码实例
Dec 28 Python
Pyqt5 基本界面组件之inputDialog的使用
Jun 25 Python
解决Python二维数组赋值问题
Nov 28 Python
python base64库给用户名或密码加密的流程
Jan 02 Python
Python计算机视觉里的IOU计算实例
Jan 17 Python
在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)
Mar 10 Python
python和php哪个更适合写爬虫
Jun 22 Python
calendar在python3时间中常用函数举例详解
Nov 18 Python
Python Django框架介绍之模板标签及模板的继承
May 27 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
Aug 30 Python
python Tkinter模块使用方法详解
Apr 07 Python
python django model联合主键的例子
Aug 06 #Python
django多文件上传,form提交,多对多外键保存的实例
Aug 06 #Python
详解python中的index函数用法
Aug 06 #Python
详解python 利用echarts画地图(热力图)(世界地图,省市地图,区县地图)
Aug 06 #Python
对Django url的几种使用方式详解
Aug 06 #Python
Python 保持登录状态进行接口测试的方法示例
Aug 06 #Python
解决Django 在ForeignKey中出现 non-nullable field错误的问题
Aug 06 #Python
You might like
PHP使用Session遇到的一个Permission denied Notice解决办法
2014/07/30 PHP
PHP针对JSON操作实例分析
2015/01/12 PHP
PHP处理postfix邮件内容的方法
2015/06/16 PHP
Windows2003下php5.4安装配置教程(IIS)
2016/06/30 PHP
索趣科技的答案
2007/02/07 Javascript
很多人都是用下面的js刷新站IP和PV
2008/09/05 Javascript
JavaScript DOM学习第一章 W3C DOM简介
2010/02/19 Javascript
ExtJs 表单提交登陆实现代码
2010/08/19 Javascript
Javascript绝句欣赏 一些经典的js代码
2012/02/22 Javascript
js 自定义个性下拉选择框示例
2013/08/20 Javascript
jquery判断单选按钮radio是否选中的方法
2015/05/05 Javascript
jQuery原生的动画效果
2015/07/10 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
浅谈JavaScript 函数参数传递到底是值传递还是引用传递
2016/08/23 Javascript
express启用https使用小记
2019/05/21 Javascript
Js通过AES加密后PHP用Openssl解密的方法
2019/07/12 Javascript
Node.js中文件系统fs模块的使用及常用接口
2020/03/06 Javascript
实例分析javascript中的异步
2020/06/02 Javascript
vue3+typescript实现图片懒加载插件
2020/10/26 Javascript
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
2017/07/11 Python
python3使用scrapy生成csv文件代码示例
2017/12/28 Python
Python高斯消除矩阵
2019/01/02 Python
Python解析命令行读取参数之argparse模块
2019/07/26 Python
Python中zipfile压缩文件模块的基本使用教程
2020/06/14 Python
聊聊python中的循环遍历
2020/09/07 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
python Scrapy爬虫框架的使用
2021/01/21 Python
HTML5 Canvas的事件处理介绍
2015/04/24 HTML / CSS
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
2015/02/22 面试题
纺织工程专业个人求职信范文
2014/01/27 职场文书
行政内勤岗位职责
2014/04/07 职场文书
社区巾帼文明岗事迹材料
2014/06/03 职场文书
电视新闻稿
2015/07/17 职场文书
高中班长竞选稿
2015/11/20 职场文书
Mysql实现简易版搜索引擎的示例代码
2021/08/30 MySQL
解决IDEA翻译插件Translation报错更新TTK失败不能使用
2022/04/24 Python