2

我已经阅读了这两个构建搜索应用程序的教程。

  1. 在这里使用 OpenJDK 在 Ubuntu 上安装 Solr 和 django-haystack
  2. Django – Haystack – Solr – 安装指南,在这里

但是当我谈到:

配置django-haystack,根据文档设置搜索索引类

http://docs.haystacksearch.org/dev/tutorial.html#configuration

将所需的 solr 字段添加到 settings.py(solr 服务器位置)

我收到此错误(尝试导入 haystack 时):

raise ImproperlyConfigured("You must define the HAYSTACK_SITECONF setting before using
         the search framework.")
django.core.exceptions.ImproperlyConfigured: You must define the HAYSTACK_SITECONF 
          setting before using the search framework.

在python中导入haystack,错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.6/dist-packages/django_haystack-1.2.7-py2.6.egg/haystack
     /__init__.py", line 26, in <module>
    raise ImproperlyConfigured("You must define the HAYSTACK_SITECONF setting before 
       using the search framework.")
django.core.exceptions.ImproperlyConfigured: You must define the HAYSTACK_SITECONF 
           setting before using the search framework.

我已经用sudo easy_install https://github.com/toastdriven/django-haystack/zipball/v1.2.7.

我的 Django 版本:1.4

更新:

如果你在导入 haystack 的时候遇到这样的错误:

ImportError: Settings cannot be imported, because environment variable
      DJANGO_SETTINGS_MODULE is undefined.

尝试在您的项目中导入./manage.py shell而不是import haystack.

4

1 回答 1

3

Haystack 1.2.7 不使用HAYSTACK_CONNECTIONS; 只有 Haystack 2.0+ 使用该设置。Haystack 文档默认为开发版本(当前为 2.0.0-beta),而不是当前的 PyPi 版本(1.2.7),因此您需要注意您正在查看的文档版本。

但是,如果您想走这条路,Haystack 2.0.0-beta 是完全可用的。我自己用它。你只需要从 Github 克隆它。最简单的方法是使用 pip:

pip install git+https://github.com/toastdriven/django-haystack.git#egg=django-haystack

否则,只需下载“master”分支压缩包并使用python setup.py install.

于 2012-07-11T16:14:31.233 回答