【问题标题】:confused about Solr Django and Haystack installation对 Solr Django 和 Haystack 安装感到困惑
【发布时间】:2016-02-22 03:07:39
【问题描述】:

我正在学习 Haystack 中关于在 django 中使用 solr 的教程。我将 haystack ad 下载到我安装的应用程序中,并且我喜欢检查我的开发以确保我的应用程序仍然有效。所以当我去我的本地主机时,它会说

A server error occurred.  Please contact the administrator.

在我的终端上显示

raise MissingDependency("The 'solr' backend requires the installation of 'pysolr'. Please refer to the documentation.")

当我查看 pysolr 文档时,它似乎可以在没有干草堆的情况下使用。 haystack 文档中没有提到 pysolr,pysolr 文档中也没有提到 haystack。不仅如此,pysolr还举了一个例子说

# If on Python 2.X

我正在使用 python 3。我知道有一个学习曲线,但是有没有什么可以在一篇文章中包含所有资源?还是我必须尝试并错误地解决它?它也可以是最新的吗? 2.x 到 3.5 是一个很大的差距。令人惊讶的是,没有关于此的谷歌视频或 vimeo 视频。欢迎任何和所有帮助。我知道任何值得拥有或知道的东西都不容易得到,但嘘?我见过的少数网站在 urls.py 中也有这样的 url

(r'^search/', include('haystack.urls')),

但如果我这样做,我会得到一个错误

 regex_pattern = pattern.regex.pattern

AttributeError: 'tuple' 对象没有属性 'regex'

这对于有经验的人来说可能看起来没什么,但对于未经训练的人来说,这可能会导致对正确语法的很多困惑。

【问题讨论】:

    标签: python django solr


    【解决方案1】:

    Haystack uses different adapters to talk to different backend services,例如 ElasticSearch 或 Solr。

    Solr 适配器使用 pysolr:

    您还需要一个 Solr 绑定,pysolr。通过 PyPI 分发的官方 pysolr 包是最好的版本(2.1.0+)。将 pysolr.py 放在 PYTHONPATH 上的某个位置。

    您不必自己对 pysolr 做任何事情,因为它仅在 haystack Solr 适配器中使用。请务必按照教程设置架构并运行索引。

    【讨论】:

    • 感谢您的回复,但我已经接受所有这些教程都已过时并且某些版本与某些版本不匹配。我使用的是最新的 django、python、solr 和 haystack。发现您不能将最新的 haystack 与最新的 solr 一起使用。所以我使用了 solr 4.10.4,它不起作用所以我使用了 4.10.2,它不起作用。没有任何最新的视频展示如何一起使用这些技术。这些事情都没有很好的记录。与技术变化一样多,您会认为这些文档至少会落后 6 个月。我会得到它虽然
    • 我已经逐字阅读了这些教程。以为问题出在我的配置上,只是发现最新版本与其他最新版本不兼容。教程告诉我启动 solr 服务器不工作。有点眼熟
    猜你喜欢
    • 1970-01-01
    • 2019-10-15
    • 1970-01-01
    • 2015-05-16
    • 1970-01-01
    • 2021-11-28
    • 1970-01-01
    • 1970-01-01
    • 2013-03-29
    相关资源
    最近更新 更多