django models 类型整理 version:1.8.3
django models 类型整理 version:1.8.3
网上百度到的最上面的一篇已经是11年的了,django变化很大,现在把1.8.3版的models类型大致整理了下贴出来
普通键部分
| Field | Params | in database | attention |
|---|---|---|---|
| AutoField | **options | integer | 在django代码内是自增 |
| BooleanField | **options | boolean\bit | |
| BinaryField | [**options] | blob | |
| BigIntegerField | [**options] | integer | 继承自Integer |
| CharField | max_length=None[, **options] | varchar | |
| CommaSeparatedIntegerField | max_length=None[, **options] | 继承自charField | |
| DateField | [auto_now=False, auto_now_add=False, **options] | date | auto_now最后修改记录的日期;auto_now_add添加记录的日期 |
| DateTimeField | [auto_now=False, auto_now_add=False, **options] | datetime | auto_now最后修改记录的日期;auto_now_add添加记录的日期,继承自DateField |
| DecimalField | max_digits=None, decimal_places=None[, **options] | decimal | |
| DurationField | default=[,**options] | 存储时间段,但是貌似django的开发团队还没有完善这个,有一些bug | |
| EmailField | [max_length=75, **options] | varchar | |
| FileField | update_to = None[, max_length=100, **options] | varchar | update_to 指定保存目录可带格式 |
| FilePathField | path=None[, match=None, recursive=False, max_length=100, **options] | varchar | |
| FloatField | [**options] | real | |
| GenericIPAddressField | [**options, unpack_ipv4=False, protocol=u’both’] | ||
| ImageField | upload_to=None[, height_field=None, width_field=None, max_length=100, **options] | varchar | |
| IntegerField | [**options] | integer | |
| IPAddressField | [**options] | varchar | |
| ManyToManyField | othermodel[, **options] | ||
| NullBooleanField | [**options] | bit字段上可以设置null值 | |
| PositiveIntegerField | [**options] | integer | 继承自IntegerField |
| PositiveSmallIntegerField | [**options] | smallinteger | |
| URLField | [verify_exists=True, max_length=200, **options] | varchar | |
| UUIDField | [verbose_name=None, **options] | ||
| SlugField | [max_length=50, **options] | varchar | 标签,内含索引 |
| SmallIntegerField | [**options] | smallint | 继承自IntegerField |
| TimeField | [auto_now=False, auto_now_add=False, **options] | time | auto_now最后修改记录的日期;auto_now_add添加记录的日期 |
| TextField | [**options] | text | |
| XMLField | schema_path=None[, **options] | text |
外键部分:
| Field | Params | attention |
|---|---|---|
| ForeignKey | othermodel[, **options] | 直接用model当做外键,默认是多对一的关系 |
| ManyToManyField | othermodel[, **options] | 多对多,关联其它模型,创建关联表 |
| OneToOneField | othermodel[, parent_link=False, **options] | 一对一,字段关联表属性 |
附options的部分:
- verbose_name=None
- name=None
- primary_key=False
- max_length=None
- unique=False
- blank=False
- null=False
- db_index=False
- rel=None
- default=
<class django.db.models.fields.NOT_PROVIDED> - editable=False
- serialize=True
- unique_for_date=None
- unique_for_month=None
- unique_for_year=None
- choices=None
- help_text=u’’
- db_column=None
- db_tablespace=None
- auto_created=False
- validators=[]
- error_messages=None
django models 类型整理 version:1.8.3的更多相关文章
- django models的点查询/跨表查询/双下划线查询
django models 在日常的编程中,我们需要建立数据库模型 而往往会用到表与表之间的关系,这就比单表取数据要复杂一些 在多表之间发生关系的情形下,我们如何利用models提供的API的特性获得 ...
- Django - models.py 应用
Django - models.py 应用 编写 models.py 文件 from django.db import models # Create your models here. class ...
- How to manage concurrency in Django models
How to manage concurrency in Django models The days of desktop systems serving single users are long ...
- django models 数据库操作
django models 数据库操作 创建模型 实例代码如下 from django.db import models class School(models.Model): pass class ...
- django models中的class meta
Django models中的meta选项 通过一个内嵌类 "class Meta" 给你的 model 定义元数据, 类似下面这样: class Foo(models.Model ...
- Django models 操作高级补充
Django models 操作高级补充 字段参数补充: 外键 约束取消 ..... ORM中原生SQL写法: raw connection extra
- Django models Form model_form 关系及区别
Django models Form model_form
- Django models .all .values .values_list 几种数据查询结果的对比
Django models .all .values .values_list 几种数据查询结果的对比
- django models数据类型
Django Models的数据类型 AutoField IntegerField BooleanField true/false CharField maxlength,必填 TextField C ...
随机推荐
- 远程复制 scp命令
定义 本机为A,用户名为usera,登录远程主机B的为userb,IP为remote_ip 1. 从B 拷贝文件到A机器 用下面的命令 scp userb@remote_ip:remote_path ...
- centos搭建zabbix
安装一些依赖包,不同情况缺的包不同 yum install mysql-devel curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd ph ...
- MyEclipse6.5安装SVN插件的三种方法
MyEclipse6.5安装SVN插件的三种方法 方法一.如果可以上网可在线安装 1. 打开Myeclipse,在菜单栏中选择Help→Software Updates→Find and Instal ...
- Java所有编码问题参考手册
一.编码基本知识 1.iso8859-1 ——属于单字节编码,最多能表示的字符范围是 0-255,应用于英文系列.比如,字母 'a' 的编码为0x61=97. 很明显,iso8859-1 编码表示的 ...
- NOI十连测 第四测 T2
思路:线段树套可持久化treap,可持久化treap我还是第一次听说.. 改题的时候没看数据范围..乱开数组T_T #include<algorithm> #include<cstd ...
- QPainter就是手里的作图工具,只需要三洋东西:笔(颜色,宽度,样式),字体(写字),刷子(大面积作画),这里有三个典型例子
设置笔和字体以后,就可以写字了: void MainWindow::paintEvent(QPaintEvent *event) { Q_UNUSED(event); QPainter painter ...
- C# 语法技巧_三目运算_switch_case
一.三目运算符 三目运算符的一种简便写法: bool b = str == "abc" ? false : true; 当是自身时,实际上别吝啬那一个括号,有一个括号,实际上更容易 ...
- c# 控制IE浏览器
原文 http://www.cnblogs.com/love2wllw/archive/2010/05/19/1739327.html 想写一个桌面程序,用C#.程序运行后,会用IE打开指定的网页,并 ...
- linux 让root用户可以telnet
haproxy01:/root# cat /etc/securetty console vc/1 vc/2 vc/3 vc/4 vc/5 vc/6 vc/7 vc/8 vc/9 vc/10 vc/11 ...
- 经验:Ubuntu 登陆 L2TP VPN
Ubuntu Linux 操作系统默认支持PPTP协议的VPN登陆,但是随着网络环境的复杂化,我们需要使用L2TP协议的VPN登陆,下面,我们只需要简单的几条命令即可登陆L2TP协议的VPN. ...