phl*_*bas 7 django django-haystack elasticsearch
我正在尝试使用elasticsearch后端设置haystack搜索我收到以下错误:
./manage.py rebuild_index
...
Failed to clear Elasticsearch index: (404, u'IndexMissingException[[haystack] missing]')
Run Code Online (Sandbox Code Playgroud)
但是,以下命令有效:
curl -XPUT http://33.33.33.1:9200/haystack
{"ok":true,"acknowledged":true}
curl -XGET http://33.33.33.1:9200/haystack/test/something
{"_index":"haystack","_type":"test","_id":"something","exists":false}
Run Code Online (Sandbox Code Playgroud)
现在,跑完了
./manage.py rebuild_index
...
Failed to clear Elasticsearch index: (404, u'IndexMissingException[[haystack] missing]')
Run Code Online (Sandbox Code Playgroud)
再次,突然现在按预期工作的命令会出现以下错误:
curl -XGET http://33.33.33.1:9200/haystack/test/something
{"error":"IndexMissingException[[haystack] missing]","status":404}
Run Code Online (Sandbox Code Playgroud)
正如其他地方所建议的那样,我也试过:
from django.core import management
from haystack import connections
backend = connections['default'].get_backend()
backend.setup_complete = False
backend.existing_mapping = None
management.call_command('rebuild_index', interactive=False, verbosity=0)
Run Code Online (Sandbox Code Playgroud)
结果相同:
{"error":"IndexMissingException[[haystack] missing]","status":404}
Run Code Online (Sandbox Code Playgroud)
我正在运行Django 1.4.2,来自github的django-haystack HEAD和来自github的pyelasticsearch HEAD
配置:
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine',
'URL': 'http://33.33.33.1:9200/',
'INDEX_NAME': 'haystack',
},
}
Run Code Online (Sandbox Code Playgroud)
谁能帮我?
愚蠢的我.我没有根据haystack 2的要求从index.Indexable扩展我的Index类.因此,haystack根本没有拾取我的索引并在没有另行通知的情况下正确完成.错误消息有点误导.如果你调用rebuild_index,干草堆似乎总是给它,无论索引是否已经存在.
| 归档时间: |
|
| 查看次数: |
4018 次 |
| 最近记录: |