UC4*_*456 3 python django search solr django-haystack
我尝试了在Haystack网站上给出的基本教程http://django-haystack.readthedocs.org/en/latest/tutorial.html,它的基本搜索工作正常.但是它的搜索无效,因为假设我的Note模块有3个text字段条目.
当我搜索
python结果:2和3文本字段.
python exam结果:第3个文本字段
但是在搜索时python flask它什么都没有.我想再次获得第2和第3个结果,因为有python关键字.
当搜索boot没有结果,但它应该显示第一个结果,它boot在引导词.
当pyton再次搜索时没有结果,但它应该显示第2和第3个结果,因为它只有1个h缺少来自python.
当bootstrap django再次搜索没有结果,但它应显示第1和第2结果.
所以,它看起来像我缺少干草堆的一些高级设置.
如何使其更有效的搜索,以便它给出更好的结果,而不仅仅是直接匹配?
我已回复您的各种问题作为内联回复.
但是当搜索python flask时它什么都没有.我想再次获得第二和第三个结果,因为有python关键字.
您想要将haystack运算符更改AND为OR.有关详细信息,请参阅http://django-haystack.readthedocs.org/en/v2.1.0/settings.html#haystack-default-operator.
当搜索引导没有结果,但它应该显示第一个结果,它已在引导字启动.
看看NgramField和EdgeNgramField部分匹配.
当搜索pyton时没有结果,但它应该显示第2和第3个结果,因为它只有1个char从python中丢失.
看看haystack的拼写建议:http://django-haystack.readthedocs.org/en/latest/searchqueryset_api.html#spelling-suggestion
当搜索bootstrap django再没有结果,但它应该显示第1和第2结果.
这是由haystack运算符配置的.
Haystack 2.0+的示例配置,默认运算符设置为OR和INCLUDE_SPELLING=True
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'haystack.backends.solr_backend.SolrEngine',
'URL': 'http://localhost:9001/solr/default',
'INCLUDE_SPELLING': True,
},
}
HAYSTACK_DEFAULT_OPERATOR = 'OR'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2145 次 |
| 最近记录: |