Django Haystack在子类中

时间:2018-10-24 01:39:55

标签: django django-haystack divio

我正在使用Django Haystack(带有Aldryn Search)来搜索客户端站点上的内容。但是,我们需要修改从Aldryn NewsBlog插件索引的文章-不应索引分配给Intranet部分的文章。因此,我在插件中创建了一个子类来覆盖它,例如documentation says to do

  

子类可以重写此方法以避免索引某些对象。

但是,当我尝试重建索引时,它说:

  

aldryn_newsblog.models.Article具有多个'SearchIndex'处理它。请排除aldryn_newsblog.search_indexes.ArticleIndex对象或search_modifier.search_indexes.BlogHelperIndex对象

对于我来说,文档尚不清楚,要修改NewsBlog插件中的现有索引,我需要写些什么。我不想像错误所暗示的那样完全排除它,而是像文档所说的那样对它进行子类化。

这是我的search_indexes.py文件:

from aldryn_newsblog.search_indexes import ArticleIndex


class BlogHelperIndex(ArticleIndex):

def index_queryset(self):
    # make sure only public posts are pulled
    return self.get_model().objects.exclude(app_config__app_title='DirectConnection')

1 个答案:

答案 0 :(得分:1)

我是个白痴。 Aldryn Newsblog在“版块”设置中提供了一个简单的复选框,可以启用/禁用该版块的索引编制,而无需更改代码。