# HG changeset patch # User cavaliet # Date 1398421270 -7200 # Node ID e726646578299fe77fb0a1e14f823795a777320c # Parent b9621d9f059d2e06e7656931077bc8fd6dbe40ff v1.53.4 prefetch in indexes diff -r b9621d9f059d -r e72664657829 src/ldt/ldt/__init__.py --- a/src/ldt/ldt/__init__.py Wed Apr 23 14:50:55 2014 +0200 +++ b/src/ldt/ldt/__init__.py Fri Apr 25 12:21:10 2014 +0200 @@ -1,6 +1,6 @@ __all__ = ["VERSION", "get_version", "__version__"] -VERSION = (1, 53, 3, "final", 0) +VERSION = (1, 53, 4, "final", 0) def get_version(): diff -r b9621d9f059d -r e72664657829 src/ldt/ldt/indexation/search_indexes.py --- a/src/ldt/ldt/indexation/search_indexes.py Wed Apr 23 14:50:55 2014 +0200 +++ b/src/ldt/ldt/indexation/search_indexes.py Fri Apr 25 12:21:10 2014 +0200 @@ -36,6 +36,10 @@ return ",".join(obj.tag_list) return ",".join([tag.name for tag in obj.tags.all()]) + def index_queryset(self, using=None): + "Used when the entire index for model is updated." + return self.get_model().objects.prefetch_related("tags") + class AnnotationIndex(indexes.SearchIndex, indexes.Indexable): text = indexes.CharField(document=True, use_template=True) @@ -50,6 +54,10 @@ def prepare_tags(self, obj): return ",".join([tag.name for tag in obj.tags.all()]) + + def index_queryset(self, using=None): + "Used when the entire index for model is updated." + return self.get_model().objects.prefetch_related("tags") class ContentIndex(indexes.SearchIndex, indexes.Indexable): @@ -62,4 +70,8 @@ return Content def prepare_tags(self, obj): - return ",".join([tag.name for tag in obj.tags.all()]) \ No newline at end of file + return ",".join([tag.name for tag in obj.tags.all()]) + + def index_queryset(self, using=None): + "Used when the entire index for model is updated." + return self.get_model().objects.prefetch_related("tags") \ No newline at end of file