Django CharField None vs空字符串全局默认标准化

时间:2018-01-08 03:21:29

标签: django string null

使用 Null获取对象总是很痛苦:

Object.objects.filter(some_field__isnull=False).exclude(some_field='')

或者这样可以获得 Null的对象:

Object.objects.filter(Q(some_field__isnull=True) | Q(some_field=''))

默认情况下它是Null,但如果提交了空表单,它将变为空字符串..

Django中是否有任何练习默认情况下以某种方式统一设置CharField行为,以某种方式容易和全局?永远不要在发展中考虑这个问题?

可能不是关于Django,但是,无论如何

1 个答案:

答案 0 :(得分:0)

你可以这样做,例如:

 class YourModel(models.Model):
     yourfield = models.CharField(default="", blank=True, null=True)

这将为YourModel的所有实例的默认值设置为空字符串(除非另有说明)。如果您设置default="somethingelse",它将具有不同的默认值。