全文檢索框架

 

第一步:安裝全文檢索框架django-haystackdjango

pip3 install django-haystacksession

 

第二步:安裝搜索引擎app

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步:spa

 


第八步:使用全文檢索

 

 

 

第9步:配置URL3d

 

第10步blog

 

第11步,更改分詞方式:改成結巴分詞索引

相關文章
相關標籤/搜索