模型字段
models.AutoField 自增列 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设置为主键 primary_key=True models.CharField 字符串 指定 max_length 参数设置最大长度 models.BooleanField 布尔类型 models.DateField 日期类型 对于参数,auto_now = True 则每次更新都会更新这个时间,auto_now_add 则只是第一次创建添加,之后的更新不再改变 models.DateTimeField 日期类型 同 models.DateField models.EmailField 字符串类型(正则表达式邮箱) models.FloatField 浮点类型 models.IntegerField 整型 models.BigIntegerField 长整型 models.IPAddressField 字符串类型(ip4正则表达式) models.GenericIPAddressField 字符串类型(ip4和ip6是可选的) 参数protocol可以是:both、ipv4、ipv6 models.TextField 字符串类型 同 CharField, 可以设置更长的字符串 models.TimeField 时间 HH:MM[:ss[.uuuuuu]] models.URLField 字符串,地址正则表达式 models.ImageField 图片类型 models.FilePathField 文件类型
字段属性
null=(True/False) 数据库中字段是否可以为空 blank=(True/False) django的 Admin 中添加数据时是否可允许空值 primary_key=(True/False) 主键,对 AutoField 设置主键后,就会代替原来的自增 id 列 auto_now=(True/False) 自动创建---无论添加或修改,都是当前操作的时间,在 MySql 下存在过滤月份时候数据为空,解决方案参考 MySql 文档 Section 10.6 auto_now_add=(True/False) 自动创建---永远是创建时的时间 choices=(xx,xx,xx) 可选择列表项,通常是一个列表或者元组 max_length=(int) 最大长度,多和字符串类型配合使用 verbose_name='xxxx' Admin 中字段的显示名称 name|db_column 数据库中的字段名称 unique=(True/False) 是否可以重复 db_index=(True/False) 是否设置为索引 editable=(True/False) 在Admin里是否可编辑 error_messages='xxxx' 错误提示 auto_created=(True/False) 是否自动创建 help_text='xxxx' 在 Admin 中提示帮助信息 upload-to='xxxx' 上传到哪个位置,与 ImageField,FfileField 配合使用
参考:
https://blog.csdn.net/zhou_xiong1130/article/details/107219809