1

我无法在生产服务器上安装 django-haystack。

No module named haystack运行以下任何命令时出现错误:
python manage.py syncdb
python manage.py runserver
python manage.py shell

这是在开发服务器上运行的现有项目的克隆,所以我相信我的 settings.py 配置正确。

我在 virtualenv 中工作。我曾尝试使用 pip 多次卸载并重新安装 django-haystack。

什么可能导致此错误?

更新:

通过执行以下步骤获得了更多数据:

在 virtualenv 内部:pip freeze- django-haystack 未列出。
在 virtualenv 之外:pip freeze- 列出了 django-haystack。
外部 virtualenv:sudo pip uninstall django-haystack
外部 virtualenv:pip freeze- django-haystack 未列出。
在 virtualenv 内部:which pip- /home/{user}/.virtualenvs/{virtualenv}/bin/pip在 vi​​rtualenv
内部:在 vi​​rtualenv 内部sudo pip install django-haystackpip freeze- django-haystack 仍未列出。在 virtualenv 之外:pip freeze- 列出了 django-haystack。

好奇是不是?
我正在使用 virtualenvwrapper (如果您无法从 pip 路径中分辨出来)

为什么 pip 在我的 virtualenv 之外安装它(以及我注意到的其他一些包)?

4

2 回答 2

2

在这里找到答案:Python packages not installed in virtualenv using pip

问题是我在我的 virtualenv 中使用 sudo 和 pip。结果,pip 安装在我的 virtualenv 之外。

于 2013-09-04T04:44:32.563 回答
1
pip uninstall haystack

pip install django-haystack
于 2017-09-22T05:19:52.143 回答