CharField
class CharField(max_length=None[, **options])

# 字符串(存储从小到大各种长度)
# 如果是巨大的文本类型,可以用 TextField,该字段默认的表单样式是 TextInput,CharField 必须接收一个额外的参数: max_length,在数据库层和 Django 表单验证中起作用, 用来限定字段的长度
IntegerField
class IntegerField([**options])

# 整数(-2147483648 到 2147483648)
# 默认的表单输入工具是TextInput
FloatField
class FloatField([**options])

# 浮点数
# max_digits 总位数(不包括小数点和符号)
# decimal_places 小数位数
# 举例, 要保存最大值为 999 (小数点后保存2位),你要这样定义字段:
# models.FloatField(..., max_digits=5, decimal_places=2)
AutoField
class AutoField(**options)

# 根据实际 ID 自动增长的 IntegerField
# 添加记录时它会自动增长,你通常不需要直接使用这个字段
# 自定义一个主键:my_id=models.AutoField(primary_key=True),如果你不指定主键的话,系统会自动添加一个主键字段到你的 model.
BooleanField
class BooleanField(**options)

# true/false
# 此字段的默认表单挂件是一个 CheckboxInput,如果你需要设置 null 值,则使用 NullBooleanField 来代替 BooleanField。如果Field.default没有指定的话, BooleanField 的默认值是 None。
TextField
class TextField([**options])

# 大文本字段
# 该模型默认的表单组件是 Textarea
EmailField
class EmailField([max_length=254, **options])

# 带有检查 Email 合法性的 CharField
# 它使用 EmailValidator 来验证输入合法性
DateField
class DateField([auto_now=False, auto_now_add=False, **options])

# 日期字段
# Argument 描述
# auto_now 当对象被保存时,自动将该字段的值设置为当前时间,通常用于表示 "last-modified" 时间戳
# auto_now_add 当对象首次被创建时,自动将该字段的值设置为当前时间,通常用于表示对象创建时间
DateTimeField
class DateTimeField([auto_now=False, auto_now_add=False, **options])

# 日期时间字段
# 类似 DateField 支持同样的附加选项
ImageField
class ImageField([upload_to=None, height_field=None, width_field=None, max_length=100, **options])

# 类似 FileField, 不过要校验上传对象是否是一个合法图片
# 它有两个可选参数:height_field 和 width_field,如果提供这两个参数,则图片将按提供的高度和宽度规格保存
FileField
class FileField([upload_to=None, max_length=100, **options])

# 上传文件的字段
# 字段不支持 primary_key 和 unique 参数,如果使用会生成 TypeError 错误,在旧版本 Django 中,upload_to 属性是必须的
URLField
class URLField([max_length=200, **options])

# CharField 类型的 URL
# 若 verify_exists 参数为 True (默认), 给定的 URL 会预先检查是否存在( 即URL是否被有效装入且没有返回404响应)
SlugField
class SlugField([max_length=50, **options])

# 短标题
# 一个 slug 只能包含字母、数字、下划线或者是连字符,通常用来作为短标签,通常它们是用来放在URL里的。与 CharField 类似, 你可以指定max_length 的值,如果没有指定 max_length, Django 将会默认长度为 50
FilePathField
class FilePathField(path=None[, match=None, recursive=False, max_length=100, **options])

# 一个 CharField ,内容只限于文件系统内特定目录下的文件名
# 参数, 其中第一个是必需的:
# path 必填。这个 FilePathField 应该得到其选择的目录的绝对文件系统路径。例如: "/home/images"
# match 可选,match 只匹配基本文件名(base filename), 而不是整个文件路径(full path)
# recursive 可选,True/False,默认 False
# allow_files 可选,True/False,默认 False
# allow_folders 可选,True/False,默认 False
GenericIPAddressField
class GenericIPAddressField([protocol=both, unpack_ipv4=False, **options])

# IPv4 或 IPv6 地址, 字符串格式 (例如 192.0.2.30 或 2a02:42fe::4)
# 默认表单小部件是一个 TextInput
CommaSeparatedIntegerField
class CommaSeparatedIntegerField(max_length=None[, **options])

# 逗号分隔的整数字段
# 像 CharField 一样,需要一个 max_length 参数,同时数据库移植时也需要注意
BigIntegerField
class BigIntegerField([**options])

# 64 位整数
# 类似于一个 IntegerField,它的值的范围是 -9223372036854775808 到9223372036854775807 之间, 这个字段默认的表单组件是一个 TextInput
BinaryField
class BinaryField([**options])

# 存储原始二进制码
# 只支持 bytes 赋值,注意这个 Field 只有很有限的功能
PositiveIntegerField
class PositiveIntegerField([**options])

# 类似 IntegerField, 但值必须是正数或者零(0)
UUIDField
class UUIDField([**options])

# 存储 UUID
# 使用 Python 的 UUID 类。当使用 PostgreSQL 数据库时,该字段类型对应的数据库中的数据类型是 uuid,使用其他数据库时,数据库对应的是char(32) 类型。使用 UUID 类型相对于使用具有 primary_key 参数的AutoField 类型是一个更好的解决方案。 数据库不会自动生成 UUID,所以推荐使用 default 参数:
import uuid
from django.db import models
class MyUUIDModel(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)


参考文章:
1. https://www.cnblogs.com/laoguiaabb/p/8182906.html
2. https://my.oschina.net/liuyuantao/blog/751343

Django models 常用数据类型的更多相关文章

  1. Django Models的数据类型汇总

    https://blog.csdn.net/devil_2009/article/details/41735611 Django Models的数据类型 汇总 AutoField IntegerFie ...

  2. Django Models的数据类型

    Django中的页面管理后台 Djano中自带admin后台管理模块,可以通过web页面去管理,有点想php-admin,使用步骤: 在项目中models.py 中创建数据库表 class useri ...

  3. Django models 常用字段类型

    1.CharField字符串字段,存较短的字符串,长文本要用TextField.必须的参数:max_length 字符的最大长度2.TextField容量很大的文本字段.admin中用 <tex ...

  4. django Models 常用的字段和参数

    1.字段 CharField IntegerField floatField DateTimeField DateField DecimalField 2.参数 null default choice ...

  5. django models数据类型

    Django Models的数据类型 AutoField IntegerField BooleanField true/false CharField maxlength,必填 TextField C ...

  6. django 框架模型之models常用的Field

    1. django 模型models 常用字段          1.models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列 如果要显式的自定义一 ...

  7. Django ORM 常用字段和参数

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

  8. Django - models.py 应用

    Django - models.py 应用 编写 models.py 文件 from django.db import models # Create your models here. class ...

  9. Django(ORM常用字段)

    day68 参考:http://www.cnblogs.com/liwenzhou/p/8688919.html 1. Django ORM常用字段:             1. AutoField ...

随机推荐

  1. Java中equals方法简略描述

    所有类都从Object中继承了equals方法,源码:public boolean equals(Object o){return this == o;} 直接判断this与o本身是否为同一对象(是否 ...

  2. 关于CSS布局

    是时候单独列出一篇文章记录CSS布局了. http://www.imooc.com/article/2235  [史上最全Html和CSS布局技巧]

  3. html-minifier中文文档

    HTMLMinifier是一个高度可配置的.经过良好测试的.基于javascript的HTML缩小器.参见相应的博客文章,了解它的工作原理.每个选项的描述.测试结果和结论.在线测试套件.还可以看到相应 ...

  4. ScriptOJ-flatten2#91

    generator的使用 function *flatten2 (arr) { const result = [] function flatten(ar) { ar.map(iter => { ...

  5. 三菱蓝瑟CK4A

    日本JDM蓝瑟,而且还是MR的性能版,避震行程也是这么长的.证明这个车子就是这样设计的. 90年代拉力血统的车就这样? 东南厂国产的蓝瑟,原装避震是厦门开发生产,来自于台湾开发工业集团的全资子公司,而 ...

  6. 通俗理解N-gram语言模型。(转)

    从NLP的最基础开始吧..不过自己看到这里,还没做总结,这里有一篇很不错的解析,可以分享一下. N-gram语言模型 考虑一个语音识别系统,假设用户说了这么一句话:“I have a gun”,因为发 ...

  7. cad.net 更改高版本填充交互方式为低版本样子

    /// <summary> /// 修改cui,双击填充 /// </summary> /// https://blog.csdn.net/hfmwu/article/deta ...

  8. grid布局学习二之子元素(项目)

    /* grid-column-start属性:左边框所在的垂直网格线 grid-column-end属性:右边框所在的垂直网格线 grid-row-start属性:上边框所在的水平网格线 grid-r ...

  9. 从零开始的程序逆向之路 第一章——认识OD(Ollydbg)以及常用汇编扫盲

    作者:Crazyman_Army 原文来自:https://bbs.ichunqiu.com/thread-43041-1-1.html 0×00 序言: 1.自从上次笔者调戏完盗取文件密码大黑客后, ...

  10. 优化以及bug

    优化1:节流函数2:城市查询时,之前用事件(拿到DOM中innerHTML,后触发事件),后改用v-model双向绑定:应该是更符合数据驱动.3:使用localstorage等本地存储,如果用户关闭本 ...