内容一:Django Models 常用的文本字段
1.1 CharField() 字符串字段
1.1.1 CharField() 字符串字段的格式
<field> = models.CharField(max_length = <string length>, <option>)
1.1.2 CharField() 字符串字段的必选项
max_length = <text length>
或者:
max_length = None
1.1.3 CharField() 字符串字段的可选项
1) blank = True
值可以为空
2) null = True
值可以为空
3) default = '<default value>'
值可以为空,可以设置成其他的值
4) unique = True
值唯一
1.1.4 CharField() 字符串字段的使用案例
item = models.CharField(max_length = 20, unique = True)
(补充:这里以设置名为 item,且是唯一的 CharField() 字符串字段为例)
1.2 TextField() 文本字段
1.2.1 TextField() 文本字段的格式
<field> = models.TextField(max_length = <string length>, <option>)
1.2.2 TextField() 文本字段的必选项
max_length = <text length>
或者:
max_length = None
1.2.3 TextField() 文本字段的可选项
1) blank = True
值可以为空
2) null = True
值可以为空
3) default = '<default value>'
值可以为空,可以设置成其他的值
4) unique = True
值唯一
1.2.4 TextField() 文本字段的使用案例
item = models.TextField(max_length = 20, unique = True)
(补充:这里以设置名为 item,且是唯一的 TextField() 文本字段为例)
内容二:Django Models 常用的数值字段
2.1 IntegerField() 整数字段
2.1.1 IntegerField() 整数字段的格式
<field> = models.IntegerField(<option>)
2.1.2 IntegerField() 整数字段的可选项
1) blank = True
值可以为空
2) null = True
值可以为空
3) default = '<default value>'
值可以为空,可以设置成其他的值
2.1.3 IntegerField() 整数字段的使用案例
item = models.IntegerField()
(补充:这里以设置名为 item 的整数字段为例)
2.2 PositiveIntegerFiled() 正整数字段
2.2.1 PositiveIntegerFiled() 正整数字段的格式
<field> = models.IntegerField(<option>)
2.2.2 PositiveIntegerFiled() 正整数字段的可选项
1) blank = True
值可以为空
2) null = True
值可以为空
3) default = '<default value>'
值可以为空,可以设置成其他的值
2.2.3 PositiveIntegerFiled() 正整数字段的使用案例
item = models.TextField()
(补充:这里以设置名为 item 的正整数字段为例)
2.3 DecimalField() 小数字段
2.3.1 DecimalField() 小数字段的格式
<field> = models.DecimalField(max_digits = <total number of decimal places>, decimal_places = <how many places after the decimal point>)
2.3.2 DecimalField() 小数字段的必选项
1) max_digits = <total number of decimal places>
小数字段总共位数
2) decimal_places = <how many places after the decimal point>
小数字段小数点后保留几位
2.2.3 DecimalField() 小数字段的使用案例
item = models.DecimalField(max_digits = 5, decimal_places = 2)
(补充:这里以设置名为 item,长度为 5,小数点后保留 2 位的 DecimalField() 小数字段为例)
内容三:Django Models 常用的日期字段
3.1 DateField() 日期字段
3.1.1 DateField() 日期字段的格式
<field> = models.DateField(<option>)
3.1.2 DateField() 日期字段的可选项
auto_now = True
自动更新创建时间
3.1.3 DateField() 日期字段的使用案例
item = models.DateField(auto_now_add=True)
(补充:这里以设置名为 item,可自动更新的 DateField() 日期字段为例)
3.2 DateTimeField() 日期时间字段
3.2.1 DateTimeField() 日期时间字段的格式
<field> = models.DateTimeField(<option>)
3.2.2 DateTimeField() 日期时间字段的可选项
auto_now = True
自动更新创建时间
3.2.3 DateTimeField() 日期时间字段的使用案例
item = models.DateTimeField(auto_now_add=True)
(补充:这里以设置名为 item,可自动更新的 DateTimeField() 日期时间字段为例)
内容四:Django Models 常用的标准格式字段
4.1 GenericIPAddressField() IPv4 地址字段
4.1.1 GenericIPAddressField() IPv4 地址字段的格式
<field> = models.IPAddressField()
(
补充:
在老的 Django 版本里,此字段的真实名称是:
models.IPAddressField()
)
4.1.2 GenericIPAddressField() IPv4 地址字段的使用案例
item = models.IPAddressField()
(补充:这里以设置名为 item 的 IPAddressField() IPv4 地址字段为例)
(
补充:
在老的 Django 版本里,此字段的真实名称是:
models.IPAddressField()
)
4.2 EmailField() 邮件地址字段
4.2.1 EmailField() 邮件地址字段的格式
<field> = models.EmailField(<option>)
4.2.2 EmailField() 邮件地址字段的可选项
unique = True
值唯一
4.2.3 EmailField() 邮件地址字段的使用案例
item = models.EmailField(unique = True)
(补充:这里以设置名为 item 的,且是唯一的 EmailField() 邮件地址字段为例)
4.3 UUIDField() UUID 字段
4.3.1 UUIDField() UUID 字段的格式
<field> = models.UUIDField()
4.3.2 UUIDField() UUID 字段的案例
item = models.UUIDField()
(补充:这里以设置名为 item 的 UUIDField() UUID 字段为例)
内容五:Django Models 常用的逻辑字段
5.1 AutoField() 自动递增字段
5.1.1 AutoField() 自动递增字段的格式
<field> = models.AutoField(<option>)
5.1.2 AutoField() 自动递增的可选项
primary_key = True
设置为主键
5.1.3 AutoField() 自动递增的使用案例
item = models.AutoField(primary_key = True)
(补充:这里以设置名为 item 的,且设置为主键的 AutoField() 自动递增字段为例)
5.2 BooleanField() 布尔(boolean)值字段
5.2.1 BooleanField() 布尔(boolean)值字段的格式
<field> = models.BooleanField(<option>)
5.2.2 BooleanField() 布尔(boolean)值字段的可选项
default=<default value>
(补充:设置布尔(boolean)值的默认值,默认值可选项有且只有:True 和 False)
5.2.3 BooleanField() 布尔(boolean)值字段的案例
item = models.BooleanField(default=False)
(补充:这里以设置名为 item 的,且默认值为 False 的布尔(boolean)值字段为例)
内容六:Django Models 常用的外部资源字段
6.1 FileField() 文件字段
6.1.1 FileField() 文件字段的格式
<field> = models.FileField(upload_to = "<directory/file>", <option>)
6.1.2 FileField() 文件字段的必选项
upload_to='<directory/file>'
6.1.3 FileField() 文件字段的可选项
max_length = '<length size>'
6.1.4 FileField() 文件字段的使用案例
item = models.FileField(upload_to ="./file", max_length = '4096')
(补充:这里以设置名为 item 的,读取本地的 ./file 文件,大小为 4096 的 FileField() 文件字段为例)
6.2 URLField() URL 字段
6.2.1 URLField() URL 字段的格式
<field> = models.URLField(max_length=<URL size>, <option>)
6.2.2 URLField() URL 字段的可选项
1) verify_exists = True
默认值为 True,如果 URL 不存在,则会返回 404
2) max_length=<URL size>
默认值为 200
6.2.3 URLField() URL 字段的使用案例
item = models.URLField(max_length= 200)
(补充:这里以设置名为 items 的,大小的为 200 的 URLField() URL 字段为例)
6.3 ImageField() 图片字段
6.3.1 ImageField() 图片字段的格式
item = models.ImageField(upload_to = "<directory/file>", <option>)
6.3.2 ImageField() 图片字段的可选项
1) height_field = <height size>
2) width_field = <width size>
3) max_length = <image size>
6.3.3 ImageField() 图片字段的使用案例
item = models.ImageField(upload_to = "./file")
(补充:这里以设置名为 item 的,读取本地的 ./file 文件的 ImageField() 图片字段为例)
参考文献:
https://docs.djangoproject.com/en/3.2/ref/models/fields/