13 lines
379 B
Python
13 lines
379 B
Python
import re
|
|
from mongoengine import StringField
|
|
|
|
|
|
class RegexField(StringField):
|
|
def __init__(self, regex, *args, **kwargs):
|
|
super().__init__(*args, **kwargs)
|
|
self.regex = re.compile(regex)
|
|
|
|
def validate(self, value, clean=True):
|
|
if not self.regex.fullmatch(value):
|
|
self.error('The given string does not match the regex for this field')
|