From 4874fffc3d278e975e401765a2e9ada069fdb87f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20C=2E=20Leit=C3=A3o?= Date: Sun, 11 May 2014 08:12:26 +0200 Subject: [PATCH] Removed _meta calls by using the haystack 'get_model_ct'. --- xapian_backend.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/xapian_backend.py b/xapian_backend.py index 8565ec6..764625f 100755 --- a/xapian_backend.py +++ b/xapian_backend.py @@ -15,7 +15,7 @@ from haystack.backends import BaseEngine, BaseSearchBackend, BaseSearchQuery, Se from haystack.constants import ID from haystack.exceptions import HaystackError, MissingDependency from haystack.models import SearchResult -from haystack.utils import get_identifier +from haystack.utils import get_identifier, get_model_ct try: import xapian @@ -290,8 +290,7 @@ class XapianSearchBackend(BaseSearchBackend): )) document.add_term(document_id) document.add_term( - DOCUMENT_CT_TERM_PREFIX + u'%s.%s' % - (obj._meta.app_label, obj._meta.module_name) + DOCUMENT_CT_TERM_PREFIX + get_model_ct(obj) ) database.replace_document(document_id, document) @@ -338,8 +337,7 @@ class XapianSearchBackend(BaseSearchBackend): database = self._database(writable=True) for model in models: database.delete_document( - DOCUMENT_CT_TERM_PREFIX + '%s.%s' % - (model._meta.app_label, model._meta.module_name) + DOCUMENT_CT_TERM_PREFIX + get_model_ct(model) ) database.close() @@ -954,9 +952,9 @@ class XapianSearchQuery(BaseSearchQuery): if self.models: subqueries = [ xapian.Query( - xapian.Query.OP_SCALE_WEIGHT, xapian.Query('%s%s.%s' % ( + xapian.Query.OP_SCALE_WEIGHT, xapian.Query('%s%s' % ( DOCUMENT_CT_TERM_PREFIX, - model._meta.app_label, model._meta.module_name + get_model_ct(model) ) ), 0 # Pure boolean sub-query ) for model in self.models