t01e4039dfadd662c38.jpg


1.1-null

数据库层面不为空

null = bool

  • 当bool的值为False时,及不可以为空,默认值为False
  • 当bool的值为True时,及可以为空

1.2-blank

DjangoAdmin中可为空,通常建议两者(null,blank)合并起来用

blank = bool

  • 当blank的值为True时,其值可以为空
  • 当blank的值为False时,其值不可以为空

1.3-choices

一个二维的元组被用作choices,如果这样定义,Django会select box代替普通的文本框,并且限定choices的值是元组中的值。

例子:

  1. GENDER_CHOICE = (
  2. (u'M', u'Male'),
  3. (u'F', u'Female'),
  4. )
  5. gender = models.CharField(max_length=2,choices = GENDER_CHOICE)

1.4-db_column

数据库中的字段名称

  • 当不指定此值时,其结果默认为定义的模型的models层面的名字

1.5-db_index

数据库索引

  • 数据库中的相关字段设置索引值

1.6-default

默认值

  • 为设置的字段添加默认值

1..7-editable

在Admin里是否可编辑

  • 当为True时,在Admin里不可以进行编辑
  • 当为False时,在Admin里可以被编辑,默认为False

1.8-error_messages

错误提示

  1. error_messages = None
  • 当出错时出现的错误提示信息

1.9- help_text

帮助信息

  • 在admin界面中显示的帮助信息

1.10-primary_key

主键,对AutoField设置主键后,就会代替原来的自增 id 列

  • 当值设置为False时,及不设定为主关键字
  • 当值设定为True时,及设定为主关键字

1.11-unique

值是否可以重复

  • 当设定为True时,及设定了不可以重复值
  • 当设定为False时,及设定了可以重复,默认值为Flase

1.12-unique_for_date/unique_for_month/unique_for_year

在固定时间区间(一天/一个月/一年)中其相同的值只能出现一次

  • 同unique的用法,但是不同的点:这个是联合约束,及unique是其值不管何时都不允许重复,但是unique_for_date/unique_for_month/unique_for_year是在固定时间区间(一天/一个月/一年)其相同的值只能出现一次。
  • 当使用了unique后就不要在使用这些参数了

1.13-validators = []自定义逻辑验证

[]中为自定义的逻辑验证

  • 当业务逻辑中出现一些有关逻辑验证的相关验证时,建议使用这个逻辑验证在相关的models中进行逻辑验证