Django CharField没有空字符串

时间:2014-03-26 03:10:22

标签: python django

有没有办法让CharField(或TextField)不接受空字符串?我试图使用blank=False,但它无效...

class Foo(models.Model):
    title = models.CharField(max_length=124, blank=False)

然后在syncdb之后我运行python manage.py shell,我可以输入:

f = Foo()
f.save()

它并没有抱怨。该对象的标题值为''。我不希望希望这种情况发生,如果Foo()没有明确地给出非空字符串,我希望它抱怨。有什么办法吗?

我正在使用Django 1.6

2 个答案:

答案 0 :(得分:3)

根据documentationblank=False纯粹与验证相关,仅适用于表单级别。

参见相关主题:

答案 1 :(得分:2)

使用MinLengthValidator

from django.core.validators import MinLengthValidator
...
title = models.CharField(max_length=10, validators=[MinLengthValidator(1)])