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
     to和related_name也可以用在多对多的关系中,已经设计数据库,这2个属性最好都加上   # 这个就是元类,就是我们经常说的元数据
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是小数部分的最大长度

Djang的model创建的字段和参数复习的更多相关文章

  1. odoo Model字段的参数

    odoo Model字段的参数 class Field(object): """ The field descriptor contains the field defi ...

  2. Django创建数据库常用字段及参数

    Django创建数据库常用字段及参数 常用字段 1.models.AutoField 自增列= int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列 ...

  3. Django中ORM介绍和字段及其参数

    ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述 ...

  4. Django ORM中常用字段和参数

    一些说明: 表myapp_person的名称是自动生成的,如果你要自定义表名,需要在model的Meta类中指定 db_table 参数,强烈建议使用小写表名,特别是使用MySQL作为后端数据库时. ...

  5. Django ORM 常用字段和参数

    Django ORM 常用字段和参数 一:常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. I ...

  6. Django之集合函数使用与mysql表的创建特殊字段分析

    1. 集合函数的使用场景: -- 单独使用: 不分组, 只查聚合结果 -- 分组使用: 按字段分组, 可查询分组字段与聚合结果 2. 导入聚合函数 from django.db.models impo ...

  7. Django框架 之 ORM 常用字段和参数

    Django框架 之 ORM 常用字段和参数 浏览目录 常用字段 字段合集 自定义字段 字段参数 DateField和DateTimeField 关系字段 ForeignKey OneToOneFie ...

  8. django----聚合查询 分组 F与Q查询 字段 及其 参数

    目录 一.orm补充查询 聚合查询 1-1 分组查询 1-2 F与Q查询 1-3 二. 字段及其参数 常用字段 AutoField IntegerField CharField DateField D ...

  9. django之ORM字段及参数

    目录 ORM字段及参数 orm常用字段 字段合集 自定义char字段 字段参数 外键字段的参数 ORM字段及参数 orm常用字段 字段名 说明 AutoField 如果自己没有定义主键id,djang ...

随机推荐

  1. opencv给图片添加文字水印<转>

    其中有一些改动为了文字大小等还有一些图片的尺寸,真正使用的时候可以把尺寸的屏蔽掉 头文件: //==================================================== ...

  2. 爬虫--requests模块学习

    requests模块 - 基于如下5点展开requests模块的学习 什么是requests模块 requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求.功能 ...

  3. for循环实例2

    九九乘法表: //九九乘法表 ; x < ; x++) { ; y <=x;y++ ) { Console.Write(y.ToString()+"*"+x.ToStr ...

  4. C# 利用反射调用类下的方法

    namespace TestReflection { public partial class Form1 : Form { public Form1() { InitializeComponent( ...

  5. JSP基本_JSTL

    自定义标签是,用户定义自己的处理的tag的机制. JSTL是,JSP用标准自定义标签.从JSTL Ver.1.2开始成为JavaEE5的子集.比较有名的是Glassfish.Tomcat上开发的话,需 ...

  6. delphi异常捕获try except语句 和 try finally语句用法

    原文地址:delphi try except语句 和 try finally语句用法以及区别作者:1865898133 一直写程序都没管他们,也尽量很少用,今天终于想把他给弄个明白,在网上找来,记下! ...

  7. Linux tcpdump命令使用方法

    tcpdump是Linux上常用的抓包命令,用于截取网络分组并输出分组内容,常用于网络问题分析和排查. tcpdump语法 tcpdump [-i 接口] [-nn] [-w 文件名] [-c 次数] ...

  8. 理解AppDomain和AppPool

    应用程序池: 这是微软的一个全新概念:应用程序池是将一个或多个应用程序链接到一个或多个工作进程集合的配置.因为应用程序池中的应用程序与其他应用程序被工作进程边界分隔,所以某个应用程序池中的应用程序不会 ...

  9. 记录git的初始设置,添加文件,提交文件

    1 初始配置 git config --global user.name ""  //配置用户名 git config --global user.email "&quo ...

  10. 让一个非窗口组件(non-windowed component)可以接受来自Windows的消息

    为什么要这样做? 有时候我们需要一个非窗口组件(比如一个非继承自TWinContrl的组件)可以接受Windows消息.要接受消息就需要一个窗口句柄,但是非窗口组件却没有句柄.这篇文章将讲述怎么让一个 ...