django中models如何对上传数据进行校验

2023-02-20 00:00:00 数据 校验 上传

Django中的Model可以使用验证器(validators)来验证上传的数据。验证器是在字段中定义的特殊函数,用于检查该字段是否包含有效的数据。以下是一个简单的示例:

from django.db import models
from django.core.exceptions import ValidationError

def validate_even(value):
    if value % 2 != 0:
        raise ValidationError('Value must be an even number.')

class MyModel(models.Model):
    even_field = models.IntegerField(validators=[validate_even])

在上面的例子中,MyModel包含一个名为even_field的整数字段,该字段只允许包含偶数。validate_even函数用于验证该字段的值。如果该字段的值不是偶数,则ValidationError将被引发,该错误消息将显示在表单的错误列表中。

您可以在任何Django模型字段中使用验证器。Django还提供了一些内置的验证器,例如EmailValidator和URLValidator,可用于验证电子邮件地址和URL。

相关文章