小编Joh*_*ohn的帖子

django cms搜索多个站点?

我在django cms的单个实例中设置了多个站点,并使用haystack进行搜索(使用Solr).但是,我得到的search_indexes.py似乎没有任何效果.就像它被忽略了一样,使用了一个默认的.为什么我的search_indexes.py没有生效?

我有以下内容:

settings.py:

HAYSTACK_SITECONF = 'mysite.search_sites'
Run Code Online (Sandbox Code Playgroud)

search_sites.py:

from cms.models import monkeypatch_reverse
import haystack

monkeypatch_reverse()
haystack.autodiscover()
Run Code Online (Sandbox Code Playgroud)

mysite的/应用/ search_indexes.py:

from django.conf import settings
from django.utils.translation import string_concat, ugettext_lazy
from django.utils.html import strip_tags

from haystack import indexes, site

from cms.models.managers import PageManager
from cms.models.pagemodel import Page
from cms.models.pluginmodel import CMSPlugin

def page_index_factory(lang, lang_name):
    if isinstance(lang_name, basestring):
        lang_name = ugettext_lazy(lang_name)

    def get_absolute_url(self):
        if 'cms.middleware.multilingual.MultilingualURLMiddleware' in settings.MIDDLEWARE_CLASSES:
            return '/%s%s' % (lang, Page.get_absolute_url(self))
        else:
            return Page.get_absolute_url(self)

    class Meta:
        proxy = True
        app_label = 'cms'
        if …
Run Code Online (Sandbox Code Playgroud)

django search django-cms

6
推荐指数
1
解决办法
1021
查看次数

标签 统计

django ×1

django-cms ×1

search ×1