diff --git a/settings/views.py b/settings/views.py index be9bf5da..ea8fd076 100644 --- a/settings/views.py +++ b/settings/views.py @@ -92,8 +92,11 @@ def expo_autosearch(request): lang = translation.get_language() term = request.GET['term'] qs = SearchQuerySet().models(Exposition, Theme, Tag).autocomplete(content_auto=term).order_by('text') - result = [{'cat': get_by_lang(item, 'catalog_name', lang), 'text': get_by_lang(item, 'name', lang), 'url':item.url, - 'id':item.pk, 'name': item.form_name} for item in qs] + result = [{'cat': get_by_lang(item, 'catalog_name', lang), + 'text': '%s(%s)'%(get_by_lang(item, 'name', lang),get_by_lang(item, 'parent', lang)) if get_by_lang(item, 'parent', lang) else get_by_lang(item, 'name', lang), + 'url':item.url, + 'id':item.pk, + 'name': item.form_name} for item in qs] result = sorted(result, key=lambda x:x['cat'], reverse=True) return HttpResponse(json.dumps(result), content_type='application/json') else: diff --git a/theme/search_indexes.py b/theme/search_indexes.py index c3069a45..edb8a51c 100644 --- a/theme/search_indexes.py +++ b/theme/search_indexes.py @@ -103,23 +103,26 @@ class TagIndex(indexes.SearchIndex, indexes.Indexable, ExpoSearchMixin): catalog_name_ru = indexes.CharField() def prepare_parent_en(self, obj): - translation.activate('en') + #translation.activate('en') try: - name = obj.theme.name - return name + # name = obj.theme.name + # return name + return obj.theme.translations.get(language_code='en').name except: return '' def prepare_parent_ru(self, obj): - translation.activate('ru') + #translation.activate('ru') + #print(obj.theme.name.encode('utf-8')) try: - name = obj.theme.name - return name + #name = obj.theme.name + #return name + return obj.theme.translations.get(language_code='ru').name except: return '' def prepare_name_en(self, obj): - translation.activate('en') + #translation.activate('en') try: name = obj.translations.get(language_code = 'en').name name = '%s'%name @@ -150,5 +153,5 @@ class TagIndex(indexes.SearchIndex, indexes.Indexable, ExpoSearchMixin): return Tag def index_queryset(self, using=None): - return self.get_model().active.all() - #return self.get_model().objects.filter() \ No newline at end of file + #return self.get_model().active.all() + return self.get_model().objects.filter() \ No newline at end of file