码迷,mamicode.com
首页 > 其他好文 > 详细

全文检索框架

时间:2019-08-04 13:19:03      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:搜索   use   messages   方式   family   第一步   ble   txt   time   

 

第一步:安装全文检索框架django-haystack

pip3 install django-haystack

 

第二步:安装搜索引擎

pip3 install whoosh

 

第三步:在settings配置app

 

INSTALLED_APPS = [
‘django.contrib.admin‘,
‘django.contrib.auth‘,
‘django.contrib.contenttypes‘,
‘django.contrib.sessions‘,
‘django.contrib.messages‘,
‘django.contrib.staticfiles‘,
‘haystack‘ #全文检索框架
‘movie.apps.MovieConfig‘,
]


# 全文检索框架的配置
HAYSTACK_CONNECTIONS = {
‘default‘: {
# 使用whoosh引擎
‘ENGINE‘: ‘haystack.backends.whoosh_backend.WhooshEngine‘,
# 索引文件路径(不需要手动建,会自动建)
‘PATH‘: os.path.join(BASE_DIR, ‘whoosh_index‘),
}
}

# 当添加、修改、删除数据时,自动生成索引
HAYSTACK_SIGNAL_PROCESSOR = ‘haystack.signals.RealtimeSignalProcessor‘

# 指定搜索结果每页显示的条数
HAYSTACK_SEARCH_RESULTS_PER_PAGE = 1

第 4 步:
定义索引类
# 定义索引类
from haystack import indexes
# 导入你的模型类
from movie.models import Movie


# 指定对于某个类的某些数据建立索引
# 索引类名格式:模型类名+Index
class MovieIndex(indexes.SearchIndex, indexes.Indexable):
# 索引字段 use_template=True指定根据表中的哪些字段建立索引文件的说明放在一个文件中
text = indexes.CharField(document=True, use_template=True)use_template=True说明在template文件下建索引文件

def get_model(self):
# 返回你的模型类
return Movie

# 建立索引的数据
def index_queryset(self, using=None):
return self.get_model().objects.all()

第五步:建立索引文件

在template文件下建索引文件,

技术图片


第6步:
在索引文件goodssku_text.txt文件中写按照什么字段搜索
技术图片

第7步:

技术图片

 

技术图片


第八步:使用全文检索

 

 

技术图片

 

第9步:配置URL

 

技术图片

第10步

技术图片

 

第11步,更改分词方式:改为结巴分词

 

全文检索框架

标签:搜索   use   messages   方式   family   第一步   ble   txt   time   

原文地址:https://www.cnblogs.com/jingandyuer/p/11297812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!