From 0efafa4c54ab8ad684df66c8e34928bb2ba88656 Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Mon, 18 Mar 2013 11:09:29 +0100 Subject: Fixed #18447 -- Made LazyObject unwrap on dict access. Thanks Roman Gladkov and Zbigniew Siciarz. --- django/utils/functional.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'django/utils') diff --git a/django/utils/functional.py b/django/utils/functional.py index d740acf8f2..f19a46aa3a 100644 --- a/django/utils/functional.py +++ b/django/utils/functional.py @@ -249,9 +249,22 @@ class LazyObject(object): """ raise NotImplementedError - # introspection support: + # Introspection support __dir__ = new_method_proxy(dir) + # Dictionary methods support + @new_method_proxy + def __getitem__(self, key): + return self[key] + + @new_method_proxy + def __setitem__(self, key, value): + self[key] = value + + @new_method_proxy + def __delitem__(self, key): + del self[key] + # Workaround for http://bugs.python.org/issue12370 _super = super -- cgit v1.3