Djang的model创建的字段和参数详解


Posted in Python onJuly 27, 2019
class test_orm(models.Model):
  id = models.AutoField(primary_key=True)
  # int自增列,必须填入参数primary_key=True,当model中没有自增咧,如果不写,python会自动创建一个名为id的自增咧
 
  age = models.IntegerField(default=12)
  # 一个整数类型,范围-21474836648到21474836648
 
  name = models.CharField(max_length=64)
  # 字符类型,必须提供max_length的参数,表示字符的最大长度
  import datetime
  t1 = models.DateField(auto_now_add=True,default=datetime.date(year=2018,month=4,day=3))
  # t1 = models.DateField(auto_now=True)
  # 日期字段,日期格式,YYYY-MM-DD,相当于python中的
 
 
  t2 = models.DateTimeField(auto_now=True)
  # t2 = models.DateTimeField(auto_now_add=True)
  # 日期时间字段,格式为YYYY-MM-DD HH:MM:SS
 
  # auto_now_add:创建数据记录的时候会把当前时间添加到数据库
  # auto_now:每次更新记录的时候会更新字段
 
 
  t3 = models.SmallIntegerField()
  # 小整数,从-32768到32768
 
  t4 = models.PositiveIntegerField()
  # 正整数类型,从0到21474836648
 
  t5 =models.PositiveSmallIntegerField()
  # 正整数类型,从0到32768
 
  t6 = models.BigIntegerField()
  # 长整数,从-9223372036854775808到9223372036854775808
 
 
  t7 = models.BooleanField()
  # 布尔值类型
 
 
  t8 = models.NullBooleanField()
  # 可以为空的布尔值类型
 
 
  t9 = models.TextField()
  # 文本类型
 
  t10 =models.EmailField()
  # 字符串类型,仅仅在django的admin会校验邮箱的格式
 
  t11 = models.IPAddressField()
  # 字符串类型,仅仅在django的admin会校验ipv4的格式
 
 
  t12 = models.GenericIPAddressField(protocol="ipv4")
  # t12 = models.GenericIPAddressField(protocol="ipv6")
  # t12 = models.GenericIPAddressField(protocol="both")
  # 字符串类型,在django的admin中会同时校验ipv4和ipv6
 
  t13 = models.URLField()
  # 字符串类型,仅仅在django的admin会校验url的格式
 
 
  t14 = models.SlugField()
  # 字符串类型,django的admin提供验证字母,数字下划线,减号
 
  t15 = models.UUIDField()
 
 
  t16 = models.FileField()
  # 保存路径到数据库中
 
  t17 = models.FloatField()
  # 浮点型
 
 
  # import datetime
  # now = datetime.datetime.now()
  #
  # d = datetime.timedelta(days=7)
  #
 
  # now = now + d
 
 
  # 上面的代码是求一个时间间隔,当前时间的的7天后的时间
 
 
  # -------------------------------------------------------
  # 字段参数
 
  t18 = models.CharField(null=True,unique=True,db_index=True,primary_key=True,max_length=64,default="aaa")
 
  # db_index:为这个字段设置索引
 
  t19 = models.ForeignKey(to="test1",to_field="name",related_name="3b",on_delete=models.CASCADE(),db_constraint=False)
  # to:关联那张表
  # to_field:关联表的哪个字段
  # related_name:反向查找的时候带起表明_set
  # on_delete:表示我这个字段关联的单表删除了,我这个表的数据该如何处理
  # db_constraint:修改外键设置为软关联,不一定一定要从另外一张表中选,可以自定义,默认是True,可以调整为False
<br data-filtered="filtered"><br data-filtered="filtered"><br data-filtered="filtered">
to和related_name也可以用在多对多的关系中,已经设计数据库,这2个属性最好都加上
<br data-filtered="filtered">
 
  # 这个就是元类,就是我们经常说的元数据
  class Meta:
    db_table = "ddddd"
    # 设置表明
    unique_together = ("t12","t19")
    # 联合唯一
 
    index_together = ("t1","t13")
    # 联合索引,为这两列做一个索引
 
 
    ordering = "t19"
    # 指定默认按照什么来排序
models.DecimalField(max_digits=4,decimal_places=2,default=34.43)

小数,max_digits是小数+总数的最大长度,decimal_places是小数部分的最大长度

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用sklearn进行对数据标准化、归一化以及将数据还原的方法
Jul 11 Python
Anaconda2 5.2.0安装使用图文教程
Sep 19 Python
Python小游戏之300行代码实现俄罗斯方块
Jan 04 Python
使用python PIL库实现简单验证码的去噪方法步骤
May 10 Python
django2笔记之路由path语法的实现
Jul 17 Python
Python之——生成动态路由轨迹图的实例
Nov 22 Python
如何在python开发工具PyCharm中搭建QtPy环境(教程详解)
Feb 04 Python
Python面向对象程序设计之私有变量,私有方法原理与用法分析
Mar 23 Python
Python实现Wordcloud生成词云图的示例
Mar 30 Python
使用Python操作MySQL的小技巧
Sep 10 Python
Django drf请求模块源码解析
Jun 08 Python
Python实现排序方法常见的四种
Jul 15 Python
python中bs4.BeautifulSoup的基本用法
Jul 27 #Python
Django的Modelforms用法简介
Jul 27 #Python
在django admin中添加自定义视图的例子
Jul 26 #Python
深入了解Django中间件及其方法
Jul 26 #Python
如何在Django项目中引入静态文件
Jul 26 #Python
Python 画出来六维图
Jul 26 #Python
django做form表单的数据验证过程详解
Jul 26 #Python
You might like
php微信公众号开发之秒杀
2018/10/20 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
jquery实现鼠标拖动图片效果示例代码
2014/01/09 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
JavaScript实现的简单烟花特效代码
2015/10/20 Javascript
JSON+Jquery省市区三级联动
2016/01/13 Javascript
JS组件中bootstrap multiselect两大组件较量
2016/01/26 Javascript
Javascript发送AJAX请求实例代码
2016/08/21 Javascript
Javascript实现前端简单的路由实例
2016/09/11 Javascript
JS动态生成年份和月份实例代码
2017/02/04 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
2017/05/25 jQuery
jQuery实现的事件绑定功能基本示例
2017/10/11 jQuery
vue watch自动检测数据变化实时渲染的方法
2018/01/16 Javascript
详解es6超好用的语法糖Decorator
2018/08/01 Javascript
webpack 静态资源集中输出的方法示例
2018/11/09 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
微信小程序实现多选删除列表数据功能示例
2019/01/15 Javascript
vue 使用 sortable 实现 el-table 拖拽排序功能
2020/12/26 Vue.js
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
2014/06/10 Python
Python heapq使用详解及实例代码
2017/01/25 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
2017/12/18 Python
PyQt5每天必学之弹出消息框
2018/04/19 Python
Python中关键字global和nonlocal的区别详解
2018/09/03 Python
使用python接入微信聊天机器人
2020/03/31 Python
windows下Pycharm安装opencv的多种方法
2020/03/05 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
2020/04/20 Python
基于Python-turtle库绘制路飞的草帽骷髅旗、美国队长的盾牌、高达的源码
2021/02/18 Python
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
世界上最大的高分辨率在线图片库:Alamy
2018/07/07 全球购物
金融专业个人求职信
2013/09/22 职场文书
师范毕业生自荐信
2013/10/17 职场文书
学生励志演讲稿
2014/01/06 职场文书
迎新生标语大全
2014/10/06 职场文书
工作失职检讨书500字
2014/10/17 职场文书
个人创业事迹材料
2014/12/30 职场文书
中学生社会实践教育活动总结
2015/05/06 职场文书