我正在尝试设置使用以下内容的项目环境:
我运行它的服务器已安装了Python(2.5.2)和Django(1.1),但我想使用较新版本的Django并且没有管理员权限进行升级。我该如何重新安装呢?
我是否必须在单独的目录中安装Python + Django + Suds?我如何将标准python路径替换为这个新路径?
谢谢!
答案 0 :(得分:2)
你可以使用virtual_env,我曾经玩过另一个(无关的)python框架buildbot
答案 1 :(得分:0)
我会在新目录中安装Django + Suds!那么你可以授予这个目录中每个人的访问权限!那么如果你正在运行apache,你只需要将这个新文件夹添加到PYTHONPATH!
仅供记录,我从未尝试过,但它应该有用!
尝试在谷歌搜索PYTHONPATH,这里有一个可能有用的链接: http://www.stereoplex.com/blog/understanding-imports-and-pythonpath
欢呼声
答案 2 :(得分:0)
很多人使用pip包管理器来安装它们(不是我最喜欢的) 通过pip安装django你会做类似的事情:
pip install django
它会将django安装在非root用户无法访问的路径中 所以你必须先为它添加安装位置。
pip install django --install-option="--prefix=$SOME_PLACE_WE_HAVE_ACCESS_TO" django
此$SOME_PLACE_WE_HAVE_ACCESS_TO
可以是/home/user/
目录
现在登录到python并执行导入:
import django
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named django
我们做错了什么????
BASH:
echo $PYTHONPATH
PYTHON:
import sys
print sys.path
well sys.path显示python中安装的软件包位置的路径。 而$ PYTHONPATH是空的......
您唯一需要做的就是将django egg文件的路径添加到PYTHONPATH
例如在我的中:
/usr/local/lib/python2.7/dist-packages/Django-1.9-py2.7.egg
将它添加到PYTHONPATH执行此操作:
BASH:
export PYTHONPATH={{EGG PATH}}
其中{{EGG PATH}}是您的django蛋的位置
什么关于django-admin ?
好吧,你必须从django在已经安装的地方设置的地方运行它,称为bin
为此你可以添加该bin的路径(想想它可能是〜/ bin或any_place_you_installed / bin)到$ PATH ...
就像PYTHONPATH一样:
export PATH=$PATH:~/bin
注意&gt;&gt; :$ PATH之后必不可少!!!要知道为什么a:echo $PATH
注意&gt;&gt; 〜/ bin必须是django bin目录所以要注意那个。
OH我的上帝那是我最喜欢的。 那个东西没有什么区别只是在pip中使用了setup.py ...
为此你必须安装setuptools ...(我认为pip将自己安装,如果pip引发setuptools错误你必须完成我在那里为django设置setuptools所做的全部事情。)
安装setuptools后,必须执行以下操作:
./setup.py install --prefix=$PATH_YOU_DESIRE
其余的都一样......
<强>参考强>
1:通过pip在其他位置安装软件包。
2:如何将PATH添加到$ PATH。