根据文档:如果一个字段有blank=True,则Django的管理站点上的验证将允许输入空值。根据null文档:请注意,空字符串值将始终存储为空字符串,而不是NULL。仅对于非字符串字段(例如整数、布尔值和日期),使用null=True。对于两种类型的字段,如果您希望在表单中允许空值,则还需要设置blank=True,因为null参数仅影响数据库存储(请参见空白)。因此,blank=True基本上只影响表单。它允许有空的表单字段。但是,如果您真的想允许数据库中的空值作为“没有值”或“空”,则还必须为非字符串字段设置null=True(对于字符串字段,空值只是空字符串'',这与NULL不同)。
这意味着您不必在表单中为字段输入值(例如,当您使用Django管理界面时)。 它与null不同,因为blank=True可能意味着当您不输入值时,将使用默认值(例如0),但null=True表示您还可以将None存储在该字段中。 请查看文档: http://docs.djangoproject.com/en/1.1/ref/models/fields/#django.db.models.Field.null http://docs.djangoproject.com/en/1.1/ref/models/fields/#django.db.models.Field.blank