Django:无法导入名称xrange

时间:2011-11-12 19:06:00

标签: django django-haystack

我是python和django的新手。我的django在我的机器上正常运行,直到我安装了django-haystack。我直接从github下载了django-haystack.zip并在haystack目录中执行了'python setup.py install'。在此之后,每当我运行'django-admin.py runserver'时,我收到以下错误:ImportError:无法导入名称xrange。

如果我从INSTALLED_APPS中删除'haystack',则上述命令工作正常。

由于同样的错误,我也无法运行'python manage.py build_solr_schema'。 让我知道如何解决这个问题。

4 个答案:

答案 0 :(得分:9)

解决了这个问题。从/usr/local/.../dist-packages/删除了haystack安装,并使用pip install django-haystack进行安装。工作得很好

答案 1 :(得分:5)

此:

http://pypi.python.org/pypi/haystack/

与此不同:

http://pypi.python.org/pypi/django-haystack

但是如果你因为某种原因将它们都放在requirements.txt文件中,就像这样:

haystack
django-haystack

并将它们安装到相同的virtualenv中然后你会遇到问题,因为它们都想要解压缩到名为'haystack'的目录。 99%的时间,如果你正在进行django开发,你根本不需要第一个。所以从requirements.txt文件中删除它,从virtualenv中删除所有与haystack有关的痕迹,然后重新安装:

pip install -r requirements.txt

你应该好好去。

答案 2 :(得分:2)

如果您安装了haystack和django-haystack,请卸载干草堆并安装django-haystack

pip uninstall haystack
pip uninstall django-haystack


pip install django-haystack

答案 3 :(得分:1)

如果安装了它,仍然会出现此错误 卸载haystack并重新安装

pip uninstall haystack

#here ask for y/n type y :)

pip install haystack

对我有用