haystack是全文搜索的框架,支持whoosh、solr、Xapian、Elasticsearc四种全文检索引擎,点击查看官方网站。
whoosh是用纯Python编写的全文搜索引擎,虽然性能比不上sphinx、xapian、Elasticsearc等,但是无二进制包,程序不会莫名其妙的崩溃,对于小型的站点,whoosh已经足够使用,点击查看whoosh文档。
jieba是一款免费的中文分词包,如果觉得不好用可以使用一些收费产品。
一、全文搜索配置
1)在环境中安装依赖包
pip install django-haystack pip install whoosh pip install jieba
2)在项目配置文件settings.py中注册应用
INSTALLED_APPS = (
...
'haystack',
)
3)在项目配置文件settings.py中指定搜索引擎
# haystack全文搜索配置
HAYSTACK_CONNECTIONS = {
'default': {
# 使用whoosh引擎
'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine',
# 索引文件存储路径
'PATH': os.path.join(BASE_DIR, 'whoosh_index'),
}
}
# 当添加、修改、删除数据时,自动生成索引
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSi

文章介绍了如何在Django项目中利用Haystack框架结合Whoosh搜索引擎和jieba中文分词包来实现全文搜索功能,包括配置、索引生成和使用步骤。
最低0.47元/天 解锁文章
1370

被折叠的 条评论
为什么被折叠?



