内置字段验证 – Django模型
Django模型中的内置字段验证是所有Django字段预定义的默认验证。每个字段都有来自Django验证器的内置验证。例如,IntegerField内置验证,它只能存储整数值,而且是在一个特定范围内。同样地,每个字段都有自己的验证。更多信息,请访问Django模型。
Django中字段的内置验证的演示
考虑一个名为geeksforgeeks的项目有一个名为geeks的应用程序。
在geeks应用程序的models.py文件中输入以下代码。
from django.db import models
from django.db.models import Model
# Create your models here.
class GeeksModel(Model):
geeks_field = models.IntegerField()
def __str__(self):
return self.geeks_field
在Django上运行了makemigrations和migrate并渲染了上述模型后,让我们尝试用字符串 “GfG is Best “创建一个实例。
你可以在管理界面看到,人们不能在IntegerField中输入字符串。同样地,每个字段都有自己的验证。
为字段添加更多内置验证信息
Django为几乎所有你想存储在数据库中的数据提供了字段的选择,比如整数字段(IntegerField),字符串字段(CharField)。但也有一些内置的验证,你可以在这些字段上应用。例如,unique=True将限制一个特定字段的条目为唯一条目。下面是一个内置验证的列表,你可以为你的字段使用更多的变化。
字段选项 | 描述 |
---|---|
Null | 如果为真,Django将在数据库中把空值存储为NULL。默认为假。 |
Blank | 如果为真,该字段允许为空白。默认为 “假”。 |
db_column | 这个字段要使用的数据库列的名称。如果没有给出,Django将使用该字段的名称。 |
Default | 该字段的默认值。这可以是一个值或一个可调用对象。如果是可调用的,它将在每次创建新对象时被调用。 |
help_text | 额外的 “帮助 “文本将显示在表单部件上。即使你的字段不在表单中使用,它对文档也很有用。 |
primary_key | 如果为真,这个字段就是模型的主键。 |
editable | 如果是假的,该字段将不会显示在管理员或任何其他 ModelForm 中。它们也会在模型验证过程中被跳过。默认为True。 |
error_messages | error_messages参数让你覆盖字段将产生的默认信息。传入一个字典,其键值与你想覆盖的错误信息相匹配。 |
help_text | 额外的 “帮助 “文本将显示在表单部件上。即使你的字段不在表单中使用,它对文档也很有用。 |
verbose_name | 该字段的一个人类可读的名字。如果没有给出verbose名称,Django会使用字段的属性名称自动创建它,并将下划线转换为空格。 |
validators | 对这个字段要运行的验证器列表。更多信息请参见验证器文档。 |
Unique | 如果为真,这个字段在整个表中必须是唯一的。 |