我使用的是Java 1.7.0_95
、Django 1.8.4
、Python 3.4.0
、Django Rest Framework 3.1.3
、ElasticSearch 2.3.1
、PyelasticSearch 1.4
和Django Haystack 2.4.1
MapperParsingException[Root mapping definition has unsupported parameters: [_boost : {null_value=1.0, name=boost}]] at org.elasticsearch.index.mapper.DocumentMapperParser.checkNoRemainingFields(DocumentMapperParser.java:171) at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:159) at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:99) at org.elasticsearch.index.mapper.MapperService.parse(MapperService.java:498) at org.elasticsearch.cluster.metadata.MetaDataMappingService$PutMappingExecutor.applyRequest(MetaDataMappingService.java:257) at org.elasticsearch.cluster.metadata.MetaDataMappingService$PutMappingExecutor.execute(MetaDataMappingService.java:230) at org.elasticsearch.cluster.service.InternalClusterService.runTasksForExecutor(InternalClusterService.java:468) at org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:772) at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:231) at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:194) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
下面是我的配置:
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine',
'URL': 'http://127.0.0.1:9200/',
'INDEX_NAME': 'haystack',
},
}
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor'
HAYSTACK_SEARCH_RESULTS_PER_PAGE = 40
存在一个相关的Django-Haystack
问题来删除Boost
参数,该参数在ElasticSearch
>=2中不再支持:
在此更改之前,Django-Haystack
在映射ElasticSearch
后端时使用_boost
参数。对主分支进行了更改。你可以在这一刻做事情:
pip install -e git+https://github.com/toastdriven/django-haystack.git@master#egg=django-haystack
还有,这里是相关的讨论:
问题内容: 我使用,,,,,和 每次尝试进行elasticsearch时,我都遇到错误。这是错误: 这是我的配置: 问题答案: 删除> = 2中不再支持的参数存在一个相关问题: 删除目前不支持的增强 在进行此更改之前,使用的是后端映射中的参数。已对master分支进行了更改。您现在可以执行以下操作: 直接从github 安装的开发版本: 在升级到第二版之前将其降级到最新的稳定版本
我正试图在本地开发环境(运行Ubuntu 12.04的vagrant VM)上设置ElasticSearch/Haystack,但我无法完成重新编制索引的过程。 ES正在运行,我已经创建了一个新的索引(我使用elasticsearch ch-head在浏览器中查看索引状态)。我可以创建一个新的索引,并查询它,所以我知道ES正在工作。 我的问题是Haystack命令: 看看这个日志记录——似乎干草堆
问题内容: 我想知道Django-Haystack + elasticsearch + pyelasticsearch / elasticsearch- py的最佳组合是什么。我已经在Ubuntu 12.04机器上使用Haystack 2.1.1-dev + elasticsearch 1.1.1 + elasticsearch-py 1.0部署了安装程序。我尝试将Haystack 2.1.0(最
我正在开发一个开放的博客网站,对于它的搜索功能,我正在使用django haystack的弹性搜索,但问题是每次发布博客文章后,我都需要运行命令-,如何自动生成更新索引?你能告诉我,如果该网站有数百万的帖子,那么,这是一个好主意,或者它会崩溃我的网站,因为我需要刷新索引每次,我是新手请告诉我正确的方法为重搜索。instagram和其他社交网站使用什么搜索技术。
django-haystack 为Django提供了模块化的搜索,它提供一个统一的、友好的API,允许您插入不同的搜索后端(如Solr,Elasticsearch,Whoosh,Xapian,等等)而不需要修改代码。
问题内容: 干草堆文档中的默认搜索表单上已显示“未找到结果”。当我尝试在searchqueryset上调用count时,出现此错误。 问题答案: 尚不支持Elasticsearch版本5(http://django- haystack.readthedocs.io/en/v2.5.1/installing_search_engines.html#elasticsearch ): Haystack当