diff --git a/djangocms_blog/search_indexes.py b/djangocms_blog/search_indexes.py index d6999c3..53df50d 100644 --- a/djangocms_blog/search_indexes.py +++ b/djangocms_blog/search_indexes.py @@ -1,16 +1,12 @@ # -*- coding: utf-8 -*- from aldryn_search.helpers import get_plugin_index_data from aldryn_search.utils import get_index_base, strip_tags +from django.utils.encoding import force_text from haystack import indexes from .models import Post from .settings import get_setting -try: - from django.utils.encoding import force_text as force_unicode_or_text -except ImportError: - from django.utils.encoding import force_unicode as force_unicode_or_text - class PostIndex(get_index_base()): haystack_use_for_indexing = get_setting('ENABLE_SEARCH') @@ -61,16 +57,16 @@ class PostIndex(get_index_base()): # text_bits.append(' '.join(post.get_keywords())) for category in post.categories.all(): text_bits.append( - force_unicode_or_text(category.safe_translation_getter('name'))) + force_text(category.safe_translation_getter('name'))) for tag in post.tags.all(): - text_bits.append(force_unicode_or_text(tag.name)) + text_bits.append(force_text(tag.name)) if post.content: plugins = post.content.cmsplugin_set.filter(language=language) for base_plugin in plugins: content = get_plugin_index_data(base_plugin, request) text_bits.append(content) for attribute in optional_attributes: - value = force_unicode_or_text(getattr(post, attribute)) + value = force_text(getattr(post, attribute)) if value and value not in text_bits: text_bits.append(value) return ' '.join(text_bits) diff --git a/tests/test_search.py b/tests/test_search.py index 550716e..6e087b0 100644 --- a/tests/test_search.py +++ b/tests/test_search.py @@ -4,7 +4,7 @@ from __future__ import absolute_import, print_function, unicode_literals from haystack.constants import DEFAULT_ALIAS from haystack.query import SearchQuerySet -from djangocms_blog.search_indexes import PostIndex +from djangocms_blog.models import Post from .base import BaseTest @@ -12,7 +12,7 @@ from .base import BaseTest class BlogIndexingTests(BaseTest): def setUp(self): - self.index = PostIndex() + self.get_pages() def test_blog_post_is_indexed_using_prepare(self): """This tests the indexing path way used by update_index mgmt command""" @@ -44,5 +44,5 @@ class BlogIndexingTests(BaseTest): def test_searchqueryset(self): posts = self.get_posts() - all_results = SearchQuerySet().all() + all_results = SearchQuerySet().models(Post) self.assertEqual(len(posts), len(all_results))