diff options
| author | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2010-09-10 19:24:24 +0000 |
|---|---|---|
| committer | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2010-09-10 19:24:24 +0000 |
| commit | 255147c97e4d71cae7ec6255720b4d265269deb2 (patch) | |
| tree | 89bf4f65098b0ad43b8a2a6c385edd91805b7015 | |
| parent | dee7ef802d386951faef012c80a2a668b1926a78 (diff) | |
Added more readable __str__ and __repr__ methods to MergeDict.
Thanks, john@calixto.net. Fixed #3508.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@13721 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | AUTHORS | 1 | ||||
| -rw-r--r-- | django/utils/datastructures.py | 21 |
2 files changed, 22 insertions, 0 deletions
@@ -238,6 +238,7 @@ answer newbie questions, and generally made Django that much better: jcrasta@gmail.com jdetaeye jhenry <jhenry@theonion.com> + john@calixto.net Zak Johnson <zakj@nox.cx> Nis Jørgensen <nis@superlativ.dk> Michael Josephson <http://www.sdjournal.com/> diff --git a/django/utils/datastructures.py b/django/utils/datastructures.py index 3cbbe27b91..4656f60f2b 100644 --- a/django/utils/datastructures.py +++ b/django/utils/datastructures.py @@ -77,6 +77,27 @@ class MergeDict(object): """Returns a copy of this object.""" return self.__copy__() + def __str__(self): + ''' + Returns something like + + "{'key1': 'val1', 'key2': 'val2', 'key3': 'val3'}" + + instead of the generic "<object meta-data>" inherited from object. + ''' + return str(dict(self.items())) + + def __repr__(self): + ''' + Returns something like + + MergeDict({'key1': 'val1', 'key2': 'val2'}, {'key3': 'val3'}) + + instead of generic "<object meta-data>" inherited from object. + ''' + dictreprs = ', '.join(repr(d) for d in self.dicts) + return '%s(%s)' % (self.__class__.__name__, dictreprs) + class SortedDict(dict): """ A dictionary that keeps its keys in the order in which they're inserted. |
