Skip to content

Commit

Permalink
Added an _-prefix to pending lookups because it's transient.
Browse files Browse the repository at this point in the history
  • Loading branch information
aaugustin committed Dec 22, 2013
1 parent 86804ab commit 439b364
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
6 changes: 3 additions & 3 deletions django/core/apps/cache.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,6 @@ def __init__(self, master=False):
# Mapping of labels to AppConfig instances for installed apps.
self.app_configs = OrderedDict()

# Pending lookups for lazy relations
self.pending_lookups = {}

# Set of app names. Allows restricting the set of installed apps.
# Used by TransactionTestCase.available_apps for performance reasons.
self.available_apps = None
Expand All @@ -54,6 +51,9 @@ def __init__(self, master=False):
self._apps_loaded = not self.master
self._models_loaded = not self.master

# Pending lookups for lazy relations.
self._pending_lookups = {}

# Cache for get_models.
self._get_models_cache = {}

Expand Down
4 changes: 2 additions & 2 deletions django/db/models/fields/related.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,15 +74,15 @@ class MyModel(Model):
else:
key = (app_label, model_name)
value = (cls, field, operation)
cls._meta.app_cache.pending_lookups.setdefault(key, []).append(value)
cls._meta.app_cache._pending_lookups.setdefault(key, []).append(value)


def do_pending_lookups(sender, **kwargs):
"""
Handle any pending relations to the sending model. Sent from class_prepared.
"""
key = (sender._meta.app_label, sender.__name__)
for cls, field, operation in sender._meta.app_cache.pending_lookups.pop(key, []):
for cls, field, operation in sender._meta.app_cache._pending_lookups.pop(key, []):
operation(field, sender, cls)

signals.class_prepared.connect(do_pending_lookups)
Expand Down

0 comments on commit 439b364

Please sign in to comment.