Django Model中字段(field)的各种选项说明


Posted in Python onMay 19, 2020

字段与选项

CharField() 字符字段

max_length = xxx or None # 必选项

blank = True 和 default = '' # 如果不是必填项,可以设置

unique = True # 如果想要使其唯一,比如用于username,可以设置

choices = xxx_CHOICES # 如果有choice选项,可以设置

TextField() 文本字段

max_length = xxx

blank = True 和 default = '' # 如果不是必填项,可以设置

DateField() and DateTimeField() 日期与时间字段

default date # 一般建议设置默认日期

DateField:default = date.today # 需要导入包 from datetime import date

DateTimeField:default = timezone.now # 需要导入包 from django.utils import timezone

auto_now = True # 对于上一次修改日期(last_modifiel date),可以设置

EmailField() 邮件字段

unique = True # 一般Email用于用户名应该是唯一的,建议设置

IntegerField(),SlugField(),URLField(),BoolField()

blank = True 和 default = '' # 如果不是必填项,可以设置

default = True or False # 对于BoolField一般建议设置

FileField() 文件字段

upload_to ="/some folder/ " # 文件指向文件,必填项

max_length = xxx

ImageField(upload_to = None,**options) 图片字段

upload_to = "/some folder/" # 图片指向文件,必填项

height_field = None

width_field = None

max_length = xxx

ForeighKey(to,on_delete,**options) 一对多关系

to # 必须指向其他模型

on_delete = models.CASCADE or models.SET_NULL # on_delete指定删除选项

"default = xxx" or "null = True"

"limit_choices_to = " # 如果有必要,可以设置

related_name = xxx # 便于反向查询

举例:

xxx = models.ForeignKey(xxx,
   on_delete = models.CASCADE,
   limit_choices_to = {'is_staff':True},
   related_name = xxx)

ManyToManyField(to,**options) 多对多关系

to # 必须只想其他模型

symmetrical = False # 如果多对多关系不是对称的,可以设置

through = 'intermediary model # 如果需要建立中间模型来搜集更多信息,可以设置

related_name = xxx # 便于反向查询

补充知识:django 使用annotate定义字段后排序翻页重复的问题

objs = A.objects.annotate(number=Sum('b__number')).order_by('-number')

此时对objs翻页,在number数据相同的地方翻页数据可能会混乱(重复)

解决办法,加上id排序

objs = A.objects.annotate(number=Sum('b__number')).order_by('-number', 'id')

以上这篇Django Model中字段(field)的各种选项说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用md5sum检查目录中相同文件代码分享
Feb 02 Python
Python实现二维有序数组查找的方法
Apr 27 Python
python字典的常用操作方法小结
May 16 Python
python使用matplotlib绘图时图例显示问题的解决
Apr 27 Python
基于Python实现的ID3决策树功能示例
Jan 02 Python
python对list中的每个元素进行某种操作的方法
Jun 29 Python
Python面向对象之类的封装操作示例
Jun 08 Python
pyqt5 使用label控件实时显示时间的实例
Jun 14 Python
Tensorflow实现神经网络拟合线性回归
Jul 19 Python
python软件都是免费的吗
Jun 18 Python
Django+RestFramework API接口及接口文档并返回json数据操作
Jul 12 Python
教你怎么用Python实现GIF动图的提取及合成
Jun 15 Python
Django模板获取field的verbose_name实例
May 19 #Python
Django多层嵌套ManyToMany字段ORM操作详解
May 19 #Python
django ORM之values和annotate使用详解
May 19 #Python
基于python实现地址和经纬度转换
May 19 #Python
Python Django form 组件动态从数据库取choices数据实例
May 19 #Python
Django自关联实现多级联动查询实例
May 19 #Python
Python的Django框架实现数据库查询(不返回QuerySet的方法)
May 19 #Python
You might like
php二维数组转成字符串示例
2014/02/17 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
2017/05/26 PHP
在IE上直接编辑网页内容的js代码(IE地址栏js)
2009/04/27 Javascript
弹出层之1:JQuery.Boxy (一) 使用介绍
2011/10/06 Javascript
jquery ui bootstrap 实现自定义风格
2014/11/14 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
javascript精确统计网站访问量实例代码
2015/12/19 Javascript
轻松实现js图片预览功能
2016/01/18 Javascript
Javascript 数组去重的方法(四种)详解及实例代码
2016/11/24 Javascript
Angular 4环境准备与Angular cli创建项目详解
2017/05/27 Javascript
详解React Native开源时间日期选择器组件(react-native-datetime)
2017/09/13 Javascript
vue中路由验证和相应拦截的使用详解
2017/12/13 Javascript
nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例
2018/01/05 NodeJs
详解vuex之store拆分即多模块状态管理(modules)篇
2018/11/13 Javascript
小程序点击图片实现自动播放视频
2020/05/29 Javascript
关于JS解构的5种有趣用法
2019/09/05 Javascript
Vue.js原理分析之nextTick实现详解
2020/09/07 Javascript
antd design table更改某行数据的样式操作
2020/10/31 Javascript
[02:36]DOTA2英雄基础教程 帕格纳
2014/01/20 DOTA
[03:24]2014DOTA2国际邀请赛 神秘商店生意火爆
2014/07/18 DOTA
python编写暴力破解FTP密码小工具
2014/11/19 Python
python实现带验证码网站的自动登陆实现代码
2015/01/12 Python
python生成词云的实现方法(推荐)
2017/06/13 Python
浅谈Python中的私有变量
2018/02/28 Python
set在python里的含义和用法
2019/06/24 Python
python Django的web开发实例(入门)
2019/07/31 Python
python 命令行传入参数实现解析
2019/08/30 Python
Python&&GDAL实现NDVI的计算方式
2020/01/09 Python
在tensorflow中实现屏蔽输出的log信息
2020/02/04 Python
Python标准库shutil模块使用方法解析
2020/03/10 Python
详解python metaclass(元类)
2020/08/13 Python
iframe跨域的几种常用方法
2019/11/11 HTML / CSS
农田水利实习自我鉴定
2013/09/19 职场文书
群众路线问题查摆对照检查材料
2014/10/04 职场文书
美容院管理规章制度
2015/08/05 职场文书
关于感恩的歌曲整理(8首)
2019/08/14 职场文书