django中模型models中常用字段和参数总结

models常用字段

AutoField

如果没有指明主键,就会产生一个自增的主键。

BigIntegerField

64位的整型数值,从 -2^63 (-9223372036854775808) 到 2^63-1(9223372036854775807)。

BinaryField

存储原始二进制数据,仅支持字节分配。功能有限。

BooleanField

布尔型和NullBooleanField有区别,true/false,本类型不允许出现null。

CharField

字符串,一般都在创建时必须写入max_length参数。

CommaSeparatedIntegerField

逗号分隔的整数,考虑到数据库的移植性,max_length参数应该必选。

DateField

时间,对应Python的datetime.date,额外的参数:DateField.auto_now表示是否每次修改时改变时间,DateField.auto_now_add 表示是否创建时表示时间,一般来说数据库重要的表都要有这样的字段记录创建字段时间个最后一次改变的时间。

DateTimeField

对应Python的datetime.datetime

DecimalField

固定精度的十进制数,一般用来存金额相关的数据。对应python的Decimal

EmailField

字符串,会检查是否是合法的email地址

FileField

class FileField([upload_to=None, max_length=100, **options])

FloatField

浮点数,必填参数:max_digits,数字长度;decimal_places,有效位数。

ImageField

图片文件类型,继承了FileField的所有属性和方法。参数除upload_to外,还有
height_field,width_field等属性。

IntegerField

[-2147483648,2147483647?]的取值范围对Django所支持的数据库都是安全的。

IPAddressField

点分十进制表示的IP地址,如10.0.0.1  ip v4和ip v6地址表示

NullBooleanField

可以包含空值的布尔类型,相当于设置了null=True的BooleanField。

PositiveIntegerField

正整数或0类型,取值范围为[0 ,2147483647]

PositiveSmallIntegerField

正短整数或0类型,类似于PositiveIntegerField,取值范围依赖于数据库特性,[0 ,32767]的取值范围对Django所支持的数据库都是安全的。

SlugField

只能包含字母,数字,下划线和连字符的字符串,通常被用于URLs表示。可选参数max_length=50,prepopulate_from用于指示在admin表单中的可选值。db_index,默认为True。

TextField

文本类型

TimeField

时间,对应Python的datetime.time

URLField

存储URL的字符串,默认长度200;verify_exists(True),检查URL可用性。

models常用参数

null=True/False

如果设置为 True , Django 存放一个 NULL 到数据库字段。默认为 False。

blank=True/False

如果设置为 True , 此 field 允许为 blank (空白),默认为 False。
一般null和blank会搭配使用

relate_name

django 默认每个主表的对象都有一个是外键的属性,可以通过它来查询到所有属于主
表的子表的信息。 这个属性的名称默认是以子表的名称小写加上_set()来表示

on_delete

django2.0版本以上外键的必填参数,表示删除该字段是对关联数据的操作

choies

一个两元元组的元组或者列表,如果执行 choices , Django 的 admin 就会使用 
选择框而不是标准的 text 框填写这个 field。
示例: Sex_choice=(('m', ‘男’),('f', ‘女))
choices = Sex_choice
2元元组的第一个元素('m')是要存入 database 的数据,第二个元素('男')是 admin 
的界面显示的数据
使用了 choices 参数的 field 在其 model 示例里,可以用 "get_field的名
字_display" 方法 显示 choices 的显示字串(就是2元元组的第二个数据)。

default

field 的默认值,可以使用可调用对象(a callable object),如果使用可调用 
对象,那么每次创建此 model 的新对象时调用可调用对象。常见如 datatime 。

help_text

help_text 的值可以在 admin form 里显示,不过即使不使用 admin ,也可以当
做描述文档使用。

primary_key

如果为 True , 这个 field 就是此 model 的 primary key 。

unique

如果为 True, 此 field 在这个 table 里必须唯一。

verbose_name

verbose,详细的意思。verbose_name,就可以理解为详细的名字吧。

以上为django的models中部分常用字段和参数

发布了41 篇原创文章 · 获赞 8 · 访问量 1962

猜你喜欢

转载自blog.csdn.net/big_white_py/article/details/102847956