Django一个项目如何设置两套haystack全文检索系统

如果你想学习如何设置一个haystack全文检索,可以去百度,很多示例的。
我这里说的是,一个项目里面,想设置两套haystack全文检索系统,如何设置。
在原有一个haystack全文检索的基础之上,看看,该复制的复制一下:
原有的

  • search_indexes.py
  • whoosh_cn_backend.py
  • model_name_1_text.txt

新建的

  • search_indexes.py
  • whoosh_cn_backend.py
  • model_name_2_text.txt

照葫芦画瓢
然后主要是设置里面,这几行代码,花了我半天时间,才鼓捣出来:

HAYSTACK_CONNECTIONS = {
    'default': {
        'ENGINE': 'appname_1.whoosh_cn_backend.WhooshEngine',
        'PATH': os.path.join(BASE_DIR, 'whoosh_index_1'),
        'EXCLUDED_INDEXES':[ 'appname_2.search_indexes.PosterIndex' ]
    },
    'aaa': {
        'ENGINE': 'appname_2.whoosh_cn_backend.WhooshEngine',
        'PATH': os.path.join(BASE_DIR, 'whoosh_index_2'),
        'EXCLUDED_INDEXES':[ 'appname_1.search_indexes.ResumeIndex' ]
    },
}

然后是view.py里面调用

from haystack.query import SearchQuerySet
posters = SearchQuerySet().using("aaa").filter(text=keyword)
# print(posters)

在这个思路之上,可以实现一个项目 拖 n个 haystack全文检索系统
如果我的文章,对你有一点点帮助的话,请帮忙在右边小心心那里点赞一下,码字不易,也是为了将来找工作好找一点,O(∩_∩)O谢谢

猜你喜欢

转载自blog.csdn.net/weixin_39990025/article/details/82810349