1、models.AutoField ---⾃增列 = int(11) 如果没有的话,默认会⽣成⼀个名称为 id 的列,如果要显⽰的⾃定义⼀个⾃增列,必须将给列设置为主键 primary_key=True。
2、models.CharField ---字符串字段 单⾏输⼊,⽤于较短的字符串,如要保存⼤量⽂本, 使⽤ TextField。必须 max_length 参数,django会根据这个参数在数据库层和校验层限制该字段所允许的最⼤字符数。3、models.BooleanField ---布尔类型=tinyint(1) 不能为空,Blank=True
4、models.ComaSeparatedIntegerField ---⽤逗号分割的数字=varchar 继承CharField,所以必须 max_lenght 参数,
5、models.DateField ---⽇期类型 date 对于参数,auto_now = True 则每次更新都会更新这个时间;auto_now_add 则只是第⼀次创建添加,之后的更新不再改变。
6、models.DateTimeField ---⽇期类型 datetime 同DateField的参数
7、models.Decimal ---⼗进制⼩数类型 = decimal 必须指定整数位max_digits和⼩数位decimal_places
8、models.EmailField ---字符串类型(正则表达式邮箱) =varchar 对字符串进⾏正则表达式 ⼀个带有检查 Email 合法性的 CharField,不接受 maxlength 参数。
9、models.FloatField ---浮点类型 = double 浮点型字段。 必须提供两个 参数, 参数描述: max_digits:总位数(不包括⼩数点和符号)
decimal_places:⼩数位数。如:要保存最⼤值为 999 (⼩数点后保存2位),你要这样定义字段:
models.FloatField(…,max_digits=5, decimal_places=2),要保存最⼤值⼀百万(⼩数点后保存10位)的话,你要这样定义:models.FloatField(…,max_digits=19, decimal_places=10)
10、models.IntegerField ---整形 ⽤于保存⼀个整数11、models.BigIntegerField ---长整形 integer_field_ranges = {
'SmallIntegerField': (-32768, 32767),
'IntegerField': (-2147483648, 2147483647),
'BigIntegerField': (-9223372036854775808, 9223372036854775807), 'PositiveSmallIntegerField': (0, 32767), 'PositiveIntegerField': (0, 2147483647), }
12、models.IPAddressField ---字符串类型(ip4正则表达式) ⼀个字符串形式的 IP 地址, (如 “202.1241.30″)。
13、models.GenericIPAddressField ---字符串类型(ip4和ip6是可选的) 参数protocol可以是:both、ipv4、ipv6 验证时,会根据设置报错
14、models.NullBooleanField ---允许为空的布尔类型 类似 BooleanField, 不过允许 NULL 作为其中⼀个选项。 推荐使⽤这个字段⽽不要⽤ BooleanField 加 null=True 选项。 admin ⽤⼀个选择框