summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2014-04-25 08:20:25 -0400
committerTim Graham <timograham@gmail.com>2014-04-25 08:36:28 -0400
commitd16948bd19737a60811eeaae77b8eb282de8bdb3 (patch)
tree9785dc0babbf7a86266f1edbd8f7054dd956701f
parenta742cf17113ab85fc94f4865a7506aeaf7766798 (diff)
[1.6.x] Fixed #22515 -- Fixed the object_id of the LogEntry that's created after a user password change in the admin.
Thanks ross at servercode.co.uk for the report. Backport of 9e7f86b890 from master
-rw-r--r--django/contrib/auth/admin.py2
-rw-r--r--django/contrib/auth/tests/test_views.py12
-rw-r--r--docs/releases/1.6.4.txt6
3 files changed, 18 insertions, 2 deletions
diff --git a/django/contrib/auth/admin.py b/django/contrib/auth/admin.py
index 033e3cf6e1..c29e8ab3dc 100644
--- a/django/contrib/auth/admin.py
+++ b/django/contrib/auth/admin.py
@@ -132,7 +132,7 @@ class UserAdmin(admin.ModelAdmin):
if form.is_valid():
form.save()
change_message = self.construct_change_message(request, form, None)
- self.log_change(request, request.user, change_message)
+ self.log_change(request, user, change_message)
msg = ugettext('Password changed successfully.')
messages.success(request, msg)
return HttpResponseRedirect('..')
diff --git a/django/contrib/auth/tests/test_views.py b/django/contrib/auth/tests/test_views.py
index 118c0902d0..277307acd6 100644
--- a/django/contrib/auth/tests/test_views.py
+++ b/django/contrib/auth/tests/test_views.py
@@ -778,3 +778,15 @@ class ChangelistTests(AuthViewsTestCase):
self.assertEqual(row.change_message, 'Changed password.')
self.logout()
self.login(password='password1')
+
+ def test_user_change_different_user_password(self):
+ u = User.objects.get(email='staffmember@example.com')
+ response = self.client.post('/admin/auth/user/%s/password/' % u.pk, {
+ 'password1': 'password1',
+ 'password2': 'password1',
+ })
+ self.assertRedirects(response, '/admin/auth/user/%s/' % u.pk)
+ row = LogEntry.objects.latest('id')
+ self.assertEqual(row.user_id, self.admin.pk)
+ self.assertEqual(row.object_id, str(u.pk))
+ self.assertEqual(row.change_message, 'Changed password.')
diff --git a/docs/releases/1.6.4.txt b/docs/releases/1.6.4.txt
index fd36b21271..58fb42cb43 100644
--- a/docs/releases/1.6.4.txt
+++ b/docs/releases/1.6.4.txt
@@ -15,4 +15,8 @@ Bugfixes
* Restored the ability to :meth:`~django.core.urlresolvers.reverse` views
created using :func:`functools.partial()`
- (`#22486 <http://code.djangoproject.com/ticket/22486>`_)
+ (`#22486 <http://code.djangoproject.com/ticket/22486>`_).
+
+* Fixed the ``object_id`` of the ``LogEntry`` that's created after a user
+ password change in the admin
+ (`#22515 <http://code.djangoproject.com/ticket/22515>`_).