我使用以下命令安装了 Django:
sudo apt-get install python-django
Run Code Online (Sandbox Code Playgroud)
它安装了 1.5.4-1ubuntu1 版本。Django 文档说,从 1.5 版开始,Django 支持 Python 3。然而,当我运行 python 3 解释器并尝试导入 Django 时,它说没有这样的模块。我尝试寻找 python3 版本的 Django,但不存在这样的包。我怎样才能让 django 在 python3 上工作?我更喜欢使用 ubuntu 包而不是手动安装。
Oli*_*Oli 38
我强烈建议避免pip3在系统站点包中安装东西。我之前已经提出过这些论点,但我会给你注释:
我强烈主张使用virtualenv. 无论去哪里都是一个巨大的痛苦,但是一旦你设置好了,你就拥有了一个完全由你控制的完整 Python 环境。这确实意味着需要做更多的工作(您必须检查更新内容,pip但目前还没有真正的帮助),但您不必担心 Ubuntu 正在做什么。
我为每个站点都有一个环境(只是位于名为 的子目录中venv)。有些人——包括我,曾几何时——更喜欢在多个站点之间共享他们的环境。我发现这在发布更新方面更容易维护,但有些站点可能很脆弱或需要旧版本,这会阻碍整个环境。天啊。
在安装这个方面,只是为了打我一巴掌,virtualenv还没有为 Python 3 打包,所以我们必须使用pip3:
$ sudo pip3 install virtualenv
...
$ virtualenv-3.3 myenv
Using base prefix '/usr'
New python executable in myenv/bin/python3
Also creating executable in myenv/bin/python
Installing setuptools, pip...done.
$ source myenv/bin/activate # This is important!
Run Code Online (Sandbox Code Playgroud)
你的 bash PS1 现在应该预先(myenv)准备好让你知道你在不同的环境中。我们可以测试环境以检查我们使用的是正确版本的东西(不使用系统版本的初学者):
$ python --version
Python 3.3.2+
$ which python pip
/home/oli/Desktop/myenv/bin/python
/home/oli/Desktop/myenv/bin/pip
Run Code Online (Sandbox Code Playgroud)
然后你就可以继续,就好像你是宇宙的主人一样。您不再需要 root 用户,pip也不需要指定pip3. 它只是更加友好。
$ pip install django umemcache
...
Run Code Online (Sandbox Code Playgroud)
如果你使用类似的东西uwsgi来承载它(你应该)使用它的 -H 标志(或 home 配置参数)来告诉它 Python 环境所在的位置。
至于使开发更容易,您可以自动“挂载”您的virtualenv环境。那里有很多脚本,但这是我的(它位于我的底部~/.bashrc:
export VENVDIR="/web"
export VENVDIR_VENV="$VENVDIR/venv"
venvcd() {
wd=$(pwd)
[[ $wd == $VENVDIR/* || $wd == $VENVDIR ]] && wasin=true || unset wasin
builtin cd "$@"
wd=$(pwd)
if [[ $wd == $VENVDIR/* || $wd == $VENVDIR ]]; then
source $VENVDIR_VENV/bin/activate
else
[ $wasin ] && deactivate
fi
}
alias cd="venvcd"
cd .
Run Code Online (Sandbox Code Playgroud)
每当我cd进入/web(存储我所有开发网站的地方)时,它都会为我安装 virtualenv。请注意,我的所有站点只有一个环境,因此只有在您执行类似操作时才会适合您。有许多其他方法可以做类似的事情。
Jon*_*han 18
我想出了如何使用pip. 原来我需要pip3:
sudo pip3 install Django
Run Code Online (Sandbox Code Playgroud)
成功了。
您可能需要通过以下方式获取 pip3:
sudo apt-get install python3-pip
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74554 次 |
| 最近记录: |