Kaydet (Commit) f4591691 authored tarafından Luke Plant's avatar Luke Plant

Fixed #15661 - LogEntry objects have no unicode method

Thanks to Keryn Knight for the report and initial patch, and ShawnMilo for
additional work on the patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@16120 bcc190cf-cafb-0310-a4f2-bffc1f526a37
üst 7b129a82
......@@ -33,6 +33,17 @@ class LogEntry(models.Model):
def __repr__(self):
return smart_unicode(self.action_time)
def __unicode__(self):
if self.action_flag == ADDITION:
return _('Added "%(object)s".') % {'object': self.object_repr}
elif self.action_flag == CHANGE:
return _('Changed "%(object)s" - %(changes)s') % {'object': self.object_repr, 'changes': self.change_message}
elif self.action_flag == DELETION:
return _('Deleted "%(object)s."') % {'object': self.object_repr}
return_value = _('LogEntry Object')
def is_addition(self):
return self.action_flag == ADDITION
......@@ -53,4 +64,4 @@ class LogEntry(models.Model):
"""
if self.content_type and self.object_id:
return mark_safe(u"%s/%s/%s/" % (self.content_type.app_label, self.content_type.model, quote(self.object_id)))
return None
\ No newline at end of file
return None
......@@ -235,3 +235,24 @@ class UtilTests(unittest.TestCase):
label_for_field('guest', Event, return_attr=True),
('awesome guest', None),
)
def test_logentry_unicode(self):
"""
Regression test for #15661
"""
log_entry = admin.models.LogEntry()
log_entry.action_flag = admin.models.ADDITION
self.assertTrue(
unicode(log_entry).startswith('Added ')
)
log_entry.action_flag = admin.models.CHANGE
self.assertTrue(
unicode(log_entry).startswith('Changed ')
)
log_entry.action_flag = admin.models.DELETION
self.assertTrue(
unicode(log_entry).startswith('Deleted ')
)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment