summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
Diffstat (limited to 'django')
-rw-r--r--django/template/context.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/django/template/context.py b/django/template/context.py
index 9982b85f6d..b2f00abd31 100644
--- a/django/template/context.py
+++ b/django/template/context.py
@@ -102,7 +102,15 @@ class BaseContext(object):
Compares two contexts by comparing theirs 'dicts' attributes.
"""
if isinstance(other, BaseContext):
- return self.dicts[-1] == other.dicts[-1]
+ # because dictionaries can be put in different order
+ # we have to flatten them like in templates
+ def flatten(dicts):
+ flat = {}
+ for d in dicts:
+ flat.update(d)
+ return flat
+
+ return flatten(self.dicts) == flatten(other.dicts)
# if it's not comparable return false
return False