整数和浮点型
AutoField
int类型,可以自动增长
一般不需要使用这个类型
如果不指定主键,那么模型会自动的生成一个叫id的自动增长的主键
id = models.AutoField(primary_key=True)
primary_key=True: 设置为主键
BigAutoField
64位的int类型,类似于AutoField,
但是产生的数据的范围是从1-9233372036854775807
id = models.BigAutoField(primary_key=True)
primary_key=True: 设置为主键
布尔类型
BooleanField
在模型层接收的是 true/false
在数据库层面是tinyint类型
如果没有指定默认值,默认值是None
注意点:
文本类型
CharField
在数据库中是varchar类型
在python就是普通的字符串
这个类型使用时必须指定最大长度
max_length
models.CharField(max_length=数值)
时间类型
DateField
日期类型: 在python中datetime.date类型
可以记录年月日
在数据库中也是date类型
可以传递的参数:
1.auto_now
在每次这个数据保存时,都使用当前时间
比如作为一个记录修改日期的短,可以将这个属性设置
2.auto_now_add
在每次数据第一次被添加进去时,都使用当前时间
比如欧威一个记录第一次入库的字段,可以将这个属性设置为true
models.DateField(auto_now)
models.DateField(auto_now_add)
DateTimeField
日期时间类型,不仅仅可以存储日期,还可以存储时间
可以传递的参数:
auto_now
auto_now_add
TimeField
时间类型,在数据库中是time类型
python中是 datetime.time类型