【问题标题】:No results in django haystack with solr使用 solr 在 django haystack 中没有结果
【发布时间】:2012-02-21 09:56:34
【问题描述】:

我对 Django 和 haystack 很陌生。我从教程 'Getting Started with Haystack' (http://django-haystack.readthedocs.org/en/latest/tutorial.html) 开始 haystack。我完全遵循了它,并且能够获得简单后端的结果,但不能获得 Solr 的结果。我更新了 HAYSTACK_CONNECTIONS,创建了 schema.xml 并将其放在 solr 的 conf 文件夹中,重建了索引并重新启动了 solr(以及 Web 服务器)。但是当我浏览页面时,我没有得到任何结果。对于同一个查询,Simple backend 给出了一些结果。在 solr 控制台上,我可以看到:

信息:[] webapp=/solr path=/select/ 参数={fl=*+score&start=0&q=e&wt=json&fq=django_ct:(myapp.note)&rows=0} hits=0 status=0 QTime=1

我复制并粘贴了“Haystack 入门”中的所有源代码。我还需要做什么才能使其正常工作?请帮忙!

【问题讨论】:

  • q=e?请尝试q=*:* 来获取 Solr 索引的所有文档,并告诉您会发生什么。
  • 对于 q=*:*,我可以获得所有行(我目前有 3 行):INFO: [] webapp=/solr path=/select/ params={fl=* +score&start=0&q=*:*&wt=json&fq=django_ct:(myapp.note)&rows=20} hits=3 status=0 QTime=0
  • 我明白了为什么我没有得到预期的结果。实际上,我想获取文本字段中包含字母“e”(LIKE '%e%' )的所有行。使用 Simple 后端,我得到了预期的结果,但在 Solr 中,它会查找确切的单词 (= 'e')

标签: solr django-haystack


【解决方案1】:

要获得类似于 LIKE '%e%' 的查询,您需要使用 Haystack 的自动完成功能。

http://django-haystack.readthedocs.org/en/latest/autocomplete.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    相关资源
    最近更新 更多