为了账号安全,请及时绑定邮箱和手机立即绑定

django 数据模型中 null=True 和 blank=True 有什么区别

django 数据模型中 null=True 和 blank=True 有什么区别

不负相思意 2019-03-20 14:13:49
django 数据模型中 null=True 和 blank=True 有什么区别
查看完整描述

2 回答

?
慕哥6287543

TA贡献1831条经验 获得超10个赞

引用sof上的一个回答。

class Test(models.Model):

charNull = models.CharField(max_length=10, null=True)

charBlank = models.CharField(max_length=10, blank=True)

charNullBlank = models.CharField(max_length=10, null=True, blank=True)
intNull = models.IntegerField(null=True)
intBlank = models.IntegerField(blank=True)
intNullBlank = models.IntegerField(null=True, blank=True)

dateNull = models.DateTimeField(null=True)
dateBlank = models.DateTimeField(blank=True)
dateNullBlank = models.DateTimeField(null=True, blank=True)

The database fields created for MySQL 5.6.x are :

CREATE TABLE test (
id INT(11) NOT NULL AUTO_INCREMENT,
`charNull` VARCHAR(10) NULL DEFAULT NULL,
`charBlank` VARCHAR(10) NOT NULL,
`charNullBlank` VARCHAR(10) NULL DEFAULT NULL,

`intNull` INT(11) NULL DEFAULT NULL,
`intBlank` INT(11) NOT NULL,
`intNullBlank` INT(11) NULL DEFAULT NULL,

`dateNull` DATETIME NULL DEFAULT NULL,
`dateBlank` DATETIME NOT NULL,
`dateNullBlank` DATETIME NULL DEFAULT NULL

)

只是从数据库层面来说。


 


查看完整回答
反对 回复 2019-03-22
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

null:
If True, Django will store empty values as NULL in the database. Default
is False.
如果为True,空值将会被存储为NULL,默认为False。

blank:
If True, the field is allowed to be blank. Default is False.
如果为True,字段允许为空,默认不允许。

查看完整回答
反对 回复 2019-03-22
  • 2 回答
  • 0 关注
  • 607 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信