python-mongodb要求中的StringField

我想知道是否可以对用户文档的设置添加要求以检查特定的字符串.这个想法是当使用电子邮件地址创建用户文档时,我想确保电子邮件来自大学,因此应以“ .edu”结尾
例:
可以接受“ john.doe@college.edu”,但不能接受“ john.doe@gmail.com”

这是我的代码:

class User(db.Document, UserMixin):
    name = db.StringField(max_length=255, unique=True)
    email = db.StringField(max_length=255, unique=True)
    phone = db.StringField(max_length=255, unique=True)
    password = db.StringField(max_length=255)
    active = db.BooleanField(default=True)
    confirmed_at = db.DateTimeField()
    roles = db.ListField(db.ReferenceField(Role), default=[])

解决方法:

您可以定义一个可选的regex argument

email = db.StringField(max_length=255, unique=True, regex=r'.*?boston\.edu$')

而且,为什么在这种情况下不使用特定的EmailField:

email = db.EmailField(max_length=255, unique=True, regex=r'.*?boston\.edu$')
上一篇:不管你是不是IT都能解决电脑越来越卡的问题(图文解析)


下一篇:Solr7.x学习(5)-一点基本操作