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


使用OpenJDK here在Ubuntu上安装Solr和django-haystack
Django – Haystack – Solr —设置指南,here


但是当我来到:


  配置django-haystack,根据设置搜索索引类
  到文档
  
  http://docs.haystacksearch.org/dev/tutorial.html#configuration
  
  将所需的Solr字段添加到settings.py(solr服务器位置)


我收到此错误(当也尝试导入干草堆时):

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中导入干草堆,错误:

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

更新:

如果在导入干草堆时遇到此类错误的麻烦:

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


尝试将项目导入为./manage.py shell而不是import haystack

最佳答案

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手动安装即可。

关于python - Ubuntu-Django Haystack和Solr集成错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11435127/

10-12 17:21