我将 django-haystack (v 2.3.1) 与 solr (v 5.0.0) 和 pysolr (v 3.0.0) 一起使用。我一直在关注教程,并设置了类似myapp/search_indexes.py
的search/indexes/myapp/mymodel_text.txt
文件。
./manage.py build_solr_schema > schema.xml
工作正常,我已将其复制到 $SOLR_HOME/conf/schema.xml。
当我尝试时出现问题./manage.py rebuild_index
。首先,我被要求确认:
警告:这将无法挽回地从连接“默认”中的搜索索引中删除所有内容。
在此之后您的选择是从备份中恢复或通过rebuild_index
命令重建。
您确定要继续吗?[是/否] 是
然后,它失败了:
因为您这么说,所以从您的索引中删除所有文档。
无法清除 Solr 索引:[原因:未找到错误 404]
已删除所有文档。
索引 6 个故事
未能将文档添加到 Solr:[原因:未找到错误 404]
我的连接设置是:
#settings.py
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'haystack.backends.solr_backend.SolrEngine',
'URL': 'http://127.0.0.1:8983/solr',
},
}
如果我导航到这个 url,我可以看到 solr 管理页面。我确保端口 8983 对 solr 开放(以及 8000 对 Django 开发服务器开放)。
我觉得我可能没有提供足够的连接信息,但还有什么要检查的?
更新:
虽然我解决了这个问题,但还有更多问题,这些都通过使用 solr (v.4.7.0)来解决,因为 django-haystack 还没有为 solr 5 做好准备(有一个与此相关的问题,但我在github上找不到了。