在Django中,对数据进行校验有两种方式:文章来源地址https://www.toymoban.com/news/detail-533941.html
- 通过Form中校验,
- 通过Model校验;
常用自带验证器:
- MaxValueValidator :验证最大值。
- MinValueValidator :验证最小值。
- MinLengthValidator :验证最小长度。
- MaxLengthValidator :验证最大长度。
- EmailValidator :验证是否是邮箱格式。
- URLValidator :验证是否是 URL 格式。
- RegexValidator :如果还需要更加复杂的验证,还可以通过正则表达式的验证。
应用举例
from django.core.validators import MaxValueValidator, MinValueValidator, RegexValidator, MaxLengthValidator
class Ioc(CoreModel):
classtype_2 = models.IntegerField(max_length=7, null=True, help_text="NDR二级分类",
validators=[
RegexValidator(r"^20[12]\d{4}$", message='NDR二级分类无效')
],
)
ioc_source = models.CharField(max_length=100, null=True, help_text="数据源",
validators=[
MaxLengthValidator(100, message='不能超过100字')
],
)
risk = models.CharField(max_length=63, default="", null=True, help_text="威胁等级",
validators=[
RegexValidator(r"^[high]|[medium]|[low]$", message='威胁等级只能取high、medium、low')
],
)
confidence = models.IntegerField(max_length=3, null=True, help_text="置信度,0~100",
validators=[
MaxValueValidator(100, message='置信度不大于100'),
MinValueValidator(0, message='置信度不小于0'),
],
)
telephone = models.CharField(validators=[validators.RegexValidator("1[345678]\d{9}",message='请输入正确格式的手机号码!')])
文章来源:https://www.toymoban.com/news/detail-533941.html
到了这里,关于【Django】数据校验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!