繁体   English   中英

django-haystack:无法向Solr添加文档:[原因:找不到错误404]

django-haystack: Failed to add documents to Solr: [Reason: Error 404 Not Found]

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在使用django-haystack(v 2.3.1)与solr(v 5.0.0)和pysolr(v 3.0.0)。 我一直在关注本教程 ,并设置了类似的myapp/search_indexes.pysearch/indexes/myapp/mymodel_text.txt文件。

./manage.py build_solr_schema > schema.xml工作正常,我已将其复制到$ SOLR_HOME / conf / schema.xml。

当我尝试./manage.py rebuild_index时会出现此问题。 首先,我要求确认:

警告:这将从连接“default”中的搜索索引中无可挽回地删除所有内容。
此后您的选择是从备份还原或通过rebuild_index命令重建。
你确定要继续吗? [y / N] y

然后,它失败了:

从您的索引中删除所有文档,因为您这样说。
无法清除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是开放的(以及Django开发服务器的8000)。

我觉得我可能没有提供足够的连接信息,但还有什么可以检查?

更新
虽然我解决了这个问题但还有更多问题, 所有这些都是通过使用solr(v.4.7.0)来修复的,因为django-haystack还没有为solr 5做好准备(有一个与此相关的问题,但我不能更长时间在github上找到它。

2 个回复

感谢user366722建议在设置中指定核心。 但是,我忽略了创建核心的更基本步骤!

解:
创建核心,指定核心的名称(例如'default')和端口(例如8983):

$bin/solr create_core -c default -p 8983

然后,只需在haystack URL设置中指定核心名称(例如'default'):

#settings.py
HAYSTACK_CONNECTIONS = {
    'default': {
        'ENGINE': 'haystack.backends.solr_backend.SolrEngine',
        'URL': 'http://127.0.0.1:8983/solr/default',
    },
}

完成!

现在,我明白了

从您的索引中删除所有文档,因为您这样说。
删除所有文件。
索引3个故事

更新
在撰写本文时,我还切换到solr 4.7.0以使其正常工作,因为haystack还没有为solr 5.x做好准备

遇到同样的问题并找到答案: https//stackoverflow.com/a/29833997/366722您需要在URL中指定核心

1 Django-Haystack 没有找到任何字段

我正在尝试用 django-haystac 和 whoosh 编写一个小搜索引擎。 我改编了他们的教程,我从 JSON 文件创建了我的索引,并使用 QueryParser 成功查询它,现在我正在尝试使用他们的视图。 当我尝试在以下位置访问搜索 url 时: http://127.0.0.1:8000 ...

3 与Solr的Django-Haystack包含搜索

我在使用solr作为后端的项目中使用haystack 。 我希望能够执行包含搜索,类似于Django .filter(something__contains="...") __startswith选项不适合我们的需要,顾名思义,它会查找以字符串开头的单词。 我尝试使用*keywor ...

5 与django-haystack和Solr的拼写建议

拼写建议我得到“无”。 首先,我在settings.py文件中设置了这个: 我重建了索引: 并更新它以获得良好的衡量标准 搜索工作正常。 当我搜索“Charger”时,它返回匹配的结果。 所以在我的views.py中,我尝试了: 但是,我的模板: ...

7 动态添加字段到 SearchIndex (django-haystack)

目前我看到了两种可能性,在定义 SearchIndex class 之后使用locals()和setattr() : 1. 2. 我正在使用 Django-haystack 和ElasticSearch 。 我知道使用locals()不是最佳做法。 那么解决我的问题的正确方法是什么? 非常感谢 ...

9 Django-Haystack不返回任何结果

我将Haystack与Elasticsearch后端一起使用。 当我查询时,没有任何结果。 我还能尝试什么? 我真的被卡住了。 任何帮助表示赞赏! :) 这是我的代码 view.py url.py search_indexes.py ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM