git.ithinksw.org
/
philo.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Minor optimization to AttributeForm. Very slightly reduces the number of queries...
[philo.git]
/
philo
/
contrib
/
shipherd
/
models.py
diff --git
a/philo/contrib/shipherd/models.py
b/philo/contrib/shipherd/models.py
index
429faaa
..
de9a869
100644
(file)
--- a/
philo/contrib/shipherd/models.py
+++ b/
philo/contrib/shipherd/models.py
@@
-163,12
+163,12
@@
class NavigationManager(models.Manager):
# A distinct query is not strictly necessary. TODO: benchmark the efficiency
# with/without distinct.
# A distinct query is not strictly necessary. TODO: benchmark the efficiency
# with/without distinct.
- targets =
list(Node.objects.filter(pk__in=target_pks).distinct()
)
+ targets =
dict([(n.pk, n) for n in Node.objects.filter(pk__in=target_pks).distinct()]
)
for cache in caches:
for item in cache['items']:
if item.target_node_id:
for cache in caches:
for item in cache['items']:
if item.target_node_id:
- item.target_node = targets[
targets.index(item.target_node)
]
+ item.target_node = targets[
item.target_node_id
]
def clear_cache(self):
"""Clears the manager's entire navigation cache."""
def clear_cache(self):
"""Clears the manager's entire navigation cache."""