0

我有一个模型

class StudentBasicInfo(models.Model):
    usn = models.CharField(blank=False,max_length=10,unique=True,validators=[])

我的 usn 格式为 [0-9][A-Za-z][A-Za-z][0-9][0-9][AZ][AZ][0-9][0-9 ][0-9]

不知道怎么写验证码

4

1 回答 1

0

创建一个验证器。我建议像这样的 RegexValidator:

from django.core.validators import RegexValidator

...

class StudentBasicInfo(models.Model):
    usn = models.CharField(blank=False,max_length=10,unique=True, validators=[RegexValidator(regex='[0-9][A-Za-z]{2}[0-9]{2}[A-Z]{2}[0-9]{3}', message='Error message goes here')])

我冒昧地通过组合在一起的组来缩短您的正则表达式。如果您想让错误出现在管理员字段旁边,您必须重载 ModelForm。

于 2018-11-03T00:49:11.943 回答