我有这个模型
name = models.CharField(max_length=50, blank=True, null=True)
email = models.EmailField(max_length=50, unique=True)
我希望用户不能在两个字段中使用除字母数字以外的任何其他字符。
有什么办法吗?
最佳答案
您将使用 validator限制字段接受的内容。一个 RegexValidator
会在这里解决问题:
from django.core.validators import RegexValidator
alphanumeric = RegexValidator(r'^[0-9a-zA-Z]*$', 'Only alphanumeric characters are allowed.')
name = models.CharField(max_length=50, blank=True, null=True, validators=[alphanumeric])
email = models.EmailField(max_length=50, unique=True, validators=[alphanumeric])
请注意,已经有一个 validate_email
validator这将为您验证电子邮件地址;上面的 alphanumeric
验证器不允许使用有效的电子邮件地址。
关于python - 如何使 Django 表单字段仅包含字母数字字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17165147/