对Solr Django和Haystack安装感到困惑

时间:2016-02-22 03:07:40

标签: python django solr

我正在关注干草堆中的教程,在django中使用solr。我将haystack广告下载到我安装的应用程序,我想检查我的开发以确保我的应用程序仍在运行。所以,当我去我的本地主机时,它说

A server error occurred.  Please contact the administrator.

在我的终端里说

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

当我去pysolr文档时,似乎没有干草堆就可以使用它。在干草堆文档中没有提及pysolr,在pysolr文档中没有提到干草堆。不仅如此,而且pysolr给出了一个说明

的例子
# If on Python 2.X

我正在使用python 3.我理解这是一个学习曲线但是在一篇文章中是否有所有资源?或者我必须试一试并将其误解出来吗?它也可以是最新的吗? 2.x到3.5是一个很大的差距。令人惊讶的是,没有谷歌视频或vimeo视频。欢迎任何和所有的帮助。我知道任何值得拥有或知道不容易来的但是sheesh?我见过的少数网站在urls.py

中也有这样的网址
(r'^search/', include('haystack.urls')),

但如果我这样做,我会收到错误

 regex_pattern = pattern.regex.pattern

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

对于经验丰富的人来说,这似乎没什么,但对于未经训练的人来说,这可能会导致对正确语法的混淆。

1 个答案:

答案 0 :(得分:0)

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适配器中使用。请务必按照教程设置架构并使索引运行。