Python-Django-常用字段和参数
-1 表模型如果不写主键,orm会自动创建一个主键
-2 常用字段
AutoField
int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。
IntegerField
一个整数类型,范围在 -2147483648 to 2147483647。
CharField
字符类型,必须提供max_length参数, max_length表示字符长度。
DateField
日期字段,日期格式 YYYY-MM-DD,相当于Python中的datetime.date()实例。
DateTimeField
日期时间字段,格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ],相当于Python中的datetime.datetime()实例
BooleanField
-对到数据库int类型
不常用
SmallIntegerField
TextField:大文本
EmailField:虽然写的是email,存的时候,只要是字符串就可以(admin内的校验)
FileField(Field):存文件
DecimalField
-orm字段参数
-null
-unique:唯一性约束
-db_index:给某个字段加索引
增加索引:
方式一
nickname = models.CharField(max_length=256,db_index=True)
方式二
class Meta:
indexs=[models.Index(fields=['nickname'])]
django 中主键必须是索引,外键默认是索引
-default
- DateField和DateTimeField
# auto_now_add=True 表示我要新增一条数据,自动设成当前时间
# auto_now=True 只要修改,就更新成当前时间
-关系字段:
-ForeignKey
-to
-to_field
-related_name
-related_query_name
-on_delete:
在删除的时候,做什么操作
-models.CASCADE 可以级联删除(lqz觉得不好)
-models.SET_NULL (lqz推荐用它)
-models.SET_DEFAULT
-OneToOneField
-同ForeignKey
-ManyToManyField
-自关联(自己关联)
-评论表
id user article content parent_id
1 1 1 你好 null
2 2 1 傻逼 1
-多对多关系自动,手动创建第三张表(中介模型)
第一种:全部手动创建,book跟author没有关联关系(不好,不建议使用)
第二种:自动创建第三张表(不太好,第三张表如果有其它字段,就不行了)
第三张:手动创建第三张表,并且用ManyToMany关联,所有的查询跟之前一样,只是增,删,改,需要通过表模型来处理
-db_constraint=False
-only和defer
# 总结
# only和defer 返回结果是queryset对象内包裹表模型的对象
# only,就是只查我指定的字段,一定会包含id 注意:没查的字段不要再用了
# defer,指定不取哪个字段,一定会包含id 注意:没查的字段不要再用了
Python-Django-常用字段和参数的更多相关文章
- Django常用字段及参数、事务、数据库查询优化
常用字段 注意: Django中没有设置对应char类型的字段,但可以支持自己定义. 自定义对应于数据库的char类型字段: from django.db.models import Field cl ...
- Django 常用字段和参数
一.ORM字段 类型 说明 AutoField 一个自动增加的整数类型字段.通常你不需要自己编写它,Django会自动帮你添加字段:`id = models.AutoField(primary_key ...
- Django --- 常用字段及参数
1 ORM字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型 ...
- Django ORM中常用字段和参数
一些说明: 表myapp_person的名称是自动生成的,如果你要自定义表名,需要在model的Meta类中指定 db_table 参数,强烈建议使用小写表名,特别是使用MySQL作为后端数据库时. ...
- Django ORM 常用字段和参数
Django ORM 常用字段和参数 一:常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. I ...
- Django框架 之 ORM 常用字段和参数
Django框架 之 ORM 常用字段和参数 浏览目录 常用字段 字段合集 自定义字段 字段参数 DateField和DateTimeField 关系字段 ForeignKey OneToOneFie ...
- Django框架(十一)—— 常用字段、参数、元信息、多对多关联关系
目录 常用字段和参数 一.ORM字段 二.ORM参数 三.关系字段 1.ForeignKey 2.OneToOneFiled 3.ManyToManyField 四.元信息 五.多对多关联关系的三种方 ...
- Django创建数据库常用字段及参数
Django创建数据库常用字段及参数 常用字段 1.models.AutoField 自增列= int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列 ...
- ORM中聚合函数、分组查询、Django开启事务、ORM中常用字段及参数、数据库查询优化
聚合函数 名称 作用 Max() 最大值 Min() 最小值 Sum() 求和 Count() 计数 Avg() 平均值 关键字: aggregate 聚合查询通常都是配合分组一起使用的 关于数据库的 ...
- day07 ORM中常用字段和参数
day07 ORM中常用字段和参数 今日内容 常用字段 关联字段 测试环境准备 查询关键字 查看ORM内部SQL语句 神奇的双下划线查询 多表查询前提准备 常用字段 字段类型 AutoField in ...
随机推荐
- easyui-tab标签
一. 加载方式 //class 加载方式<div id="box" class="easyui-tabs" style="width:500px ...
- MariaDB第二章:基本增删改查
MariaDB 数据类型 MariaDB数据类型可以分为数字,日期和时间以及字符串值. 使用数据类型的原则:够用就行, 尽量使用范围小的,而不用大的 常用的数据类型 整数:int, bit 小数:de ...
- lvs--小白博客
lvs 一.负载均衡LVS基本介绍 LVS是 Linux Virtual Server 的简称,也就是Linux虚拟服务器.这是一个由章文嵩博士发起的一个开源项目,它的官方网站是 http://www ...
- openstack安装过程遇到的问题
1.安装openstack官方源无法使用,使用阿里云的openstack源O版源 ##cat openstack-ocata.repo [openstack-ocata] name=openstac ...
- 安装appium桌面版和命令行版
一 桌面版(打开很慢,常用于辅助元素定位) 1.官网下载window版本: 2.直接点击紫色图标即可打开 3.启动server 二 命令行版(打开很快,常用于执行脚本) 1.jdk 安装jdk并 ...
- OpenCV__elemSize
elemSize 矩阵一个元素占用的字节数,例如:type是CV_16SC3,那么elemSize = 3 * 16 / 8 = 6 bytes elemSize1 矩阵元素一个通道占用的字节数,例如 ...
- PHP artisan migrate 报错显示 could not find driver ,怎么办?
记录下自己的错误 一. 1.原因是没有pdo扩展导致的, 2.解决办法:打开php.ini,然后去掉以下两行代码之前的分号(:)即可.如下: extension=php_pdo_firebird.dl ...
- Shell命令-文件及目录操作之chattr、lsattr
文件及目录操作 - chattr.lsattr 1. chattr:改变文件属性 chattr命令的功能说明 chattr命令用于改变文件属性.这项指令可改变存放在ext2文件系统上的文件或目录属性, ...
- ABP mysql
SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator ...
- re 模块 分组特别说明
关于分组优先以及 " | " 的细致练习 from django.test import TestCase import re # Create your tests here. ...