我想知道我是否可以在我的用户文档设置中添加一项要求以检查特定字符串。这个想法是当用一个电子邮件地址创建用户文档时,我想确保该电子邮件来自大学,所以它应该以#34; .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=[])
答案 0 :(得分:4)
您可以定义一个可选的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$')