Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed #269 -- Added MatchesRegularExpression validator. Thanks, Hugo!

git-svn-id: http://code.djangoproject.com/svn/django/trunk@399 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 3f2df5e7aa95e6cc78864a5cc452bb0c1d925a3e 1 parent cfbf261
Adrian Holovaty adrianholovaty authored
Showing with 13 additions and 0 deletions.
  1. +13 −0 django/core/validators.py
13 django/core/validators.py
View
@@ -333,6 +333,19 @@ def __call__(self, field_data, all_data):
if self.max_size is not None and len(field_data['content']) > self.max_size:
raise ValidationError, self.max_error_message
+class MatchesRegularExpression:
+ """
+ Checks that the field matches the given regular-expression. The regex
+ should be in string format, not already compiled.
+ """
+ def __init__(self, regexp, error_message="The format for this field is wrong."):
+ self.regexp = re.compile(regexp)
+ self.error_message = error_message
+
+ def __call__(self, field_data, all_data):
+ if not self.regexp.match(field_data):
+ raise validators.ValidationError(self.error_message)
+
class URLMimeTypeCheck:
"Checks that the provided URL points to a document with a listed mime type"
class CouldNotRetrieve(ValidationError):
Please sign in to comment.
Something went wrong with that request. Please try again.