📜  verbose_name – Django 内置字段验证(1)

📅  最后修改于: 2023-12-03 14:48:18.254000             🧑  作者: Mango

Django 内置字段验证

在 Django 中,所有的模型字段都有一个 verbose_name 属性,它用来存储该字段的人类可读的名称。这个属性主要用于在后台管理界面中显示该字段的标签。

class MyModel(models.Model):
    my_field = models.CharField(max_length=50, verbose_name='My Field')

在上面的例子中,my_field 字段的人类可读名称为 My Field

除了用于显示标签外,verbose_name 还有一个很重要的作用,就是作为验证错误信息中该字段的名称。

当你在 Django Model Form 中使用 full_clean 方法对一条数据进行验证时,如果出现验证错误,Django 会将错误信息存储到该字段名对应的字典中,并以 verbose_name 作为字典的 key。

我们可以通过以下方式来访问验证错误信息:

form.errors['my_field']  # my_field 为字段的名称,同时也是 verbose_name 属性存储的值

如果在定义 Django 模型时未设置 verbose_name 属性,则 Django 会默认将字段名称转换为人类可读的形式,并将其存储到该属性中。例如将 my_field 转换为 My field

在模型字段验证失败的情况下,通过使用 verbose_name 属性,我们可以更容易地找到验证失败的字段以及原因,从而更快地修复问题。

总结

在 Django 中,verbose_name 属性不仅用于在后台管理界面中显示字段标签,还可以作为验证错误信息中该字段的名称。在模型字段验证失败的情况下,该属性可以帮助我们更快地找到验证失败的字段以及原因。