Django Haystack 在 subclass 中覆盖 class 的 index_queryset
Django Haystack override class's index_queryset in subclass
我正在使用 Django Haystack(带有 Aldryn 搜索)来搜索客户端站点上的内容。然而,我们需要修改从 Aldryn NewsBlog 插件索引的文章——分配给 Intranet 部分的文章不应被索引。所以我在我的插件中创建了一个子类来覆盖 documentation says to do:
Subclasses can override this method to avoid indexing certain objects.
但是,当我尝试重建索引时,它显示:
aldryn_newsblog.models.Article has more than one 'SearchIndex`` handling it. Please exclude either aldryn_newsblog.search_indexes.ArticleIndex object or search_modifier.search_indexes.BlogHelperIndex object
我不清楚我需要写什么文件才能修改 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')
我是个白痴。 Aldryn Newsblog 在版块设置中提供了一个简单的复选框,无需更改代码即可 enable/disable 对该版块进行索引。
我正在使用 Django Haystack(带有 Aldryn 搜索)来搜索客户端站点上的内容。然而,我们需要修改从 Aldryn NewsBlog 插件索引的文章——分配给 Intranet 部分的文章不应被索引。所以我在我的插件中创建了一个子类来覆盖 documentation says to do:
Subclasses can override this method to avoid indexing certain objects.
但是,当我尝试重建索引时,它显示:
aldryn_newsblog.models.Article has more than one 'SearchIndex`` handling it. Please exclude either aldryn_newsblog.search_indexes.ArticleIndex object or search_modifier.search_indexes.BlogHelperIndex object
我不清楚我需要写什么文件才能修改 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')
我是个白痴。 Aldryn Newsblog 在版块设置中提供了一个简单的复选框,无需更改代码即可 enable/disable 对该版块进行索引。