diff --git a/django/core/validators.py b/django/core/validators.py index 2cfdb0f672..91d72033de 100644 --- a/django/core/validators.py +++ b/django/core/validators.py @@ -378,7 +378,7 @@ class MatchesRegularExpression: self.error_message = error_message def __call__(self, field_data, all_data): - if not self.regexp.match(field_data): + if not self.regexp.search(field_data): raise ValidationError(self.error_message) class AnyValidator: diff --git a/docs/authentication.txt b/docs/authentication.txt index d4db08ad91..0ea6809fd5 100644 --- a/docs/authentication.txt +++ b/docs/authentication.txt @@ -137,25 +137,16 @@ Basic usage Creating users ~~~~~~~~~~~~~~ -The most basic way to create users is to use the standard Django -`database API`_. Just create and save a ``User`` object:: +The most basic way to create users is to use the ``create_user`` helper +function that comes with Django:: >>> from django.models.auth import users - >>> import md5 - >>> p = md5.new('johnpassword').hexdigest() - >>> u = users.User(username='john', first_name='John', last_name='lennon', - ... email='lennon@thebeatles.com', password_md5=p, is_staff=True, - ... is_active=True, is_superuser=False) - >>> u.save() + >>> user = users.create_user('john', 'lennon@thebeatles.com', 'johnpassword') -Note that ``password_md5`` requires the raw MD5 hash (as created by -``md5.new().hexdigest()``). Because that's a pain, there's a ``create_user`` -helper function:: - - >>> from django.models.auth import users - >>> u = users.create_user('john', 'lennon@thebeatles.com', 'johnpassword') - -.. _database API: http://www.djangoproject.com/documentation/db_api/ + # Now, user is a User object already saved to the database. + # You can continue to change its attributes if you want to change other fields. + >>> user.is_staff = True + >>> user.save() Changing passwords ~~~~~~~~~~~~~~~~~~ @@ -167,6 +158,9 @@ Change a password with ``set_password()``:: >>> u.set_password('new password') >>> u.save() +Don't set the password field directly unless you know what you're doing. This +is explained in the next section. + Passwords ---------