Django添加database field时的一些疑惑,djangodatabase,Django数据模型中


Django数据模型中 null=True 和 blank=True 有什么区别?
添加 database field 时,会有这样的字段 models.CharField(null=True, blank=True),这里 null=True 和 blank=True 分别代表什么?

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,

 `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

不知道是搜不到,还是懒得看英文。

编橙之家文章,

评论关闭