扫码关注官方订阅号
ringa_lee
null 是针对数据库而言,如果 null=True, 表示数据库的该字段可以为空。
null
null=True
blank 是针对表单的,如果 blank=True,表示你的表单填写该字段的时候可以不填,比如 admin 界面下增加 model 一条记录的时候。直观的看到就是该字段不是粗体
blank
blank=True
admin
model
http://www.weiguda.com/blog/8/这个文章很详细~
引用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,
id
`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
)
只是从数据库层面来说。
更详细的不同情参照文档。https://docs.djangoproject.com/en/dev/ref/models/fields/#null
不知道是搜不到,还是懒得看英文。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
null是针对数据库而言,如果null=True, 表示数据库的该字段可以为空。blank是针对表单的,如果blank=True,表示你的表单填写该字段的时候可以不填,比如admin界面下增加model一条记录的时候。直观的看到就是该字段不是粗体http://www.weiguda.com/blog/8/这个文章很详细~
引用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)
The database fields created for MySQL 5.6.x are :
CREATE TABLE test (
idINT(11) NOT NULL AUTO_INCREMENT,)
只是从数据库层面来说。
更详细的不同情参照文档。
https://docs.djangoproject.com/en/dev/ref/models/fields/#null
不知道是搜不到,还是懒得看英文。