Pip-Django版本与Python不同';s

Pip-Django版本与Python不同';s,python,django,Python,Django,我目前正在尝试完成以下Django教程: 但是,当我尝试运行python manage.py migrate时,我得到一个错误未知命令:“migrate”。我查了一下,发现这意味着我使用的是不支持迁移的Django版本。所以我运行了python-c“import-django;print(django.get_version())”来查看django-python使用的是什么版本。结果是1.6.1。但这没有意义,因为当我执行pip列表时,我得到了Django(1.9.2)。如果我查看settin

我目前正在尝试完成以下Django教程:

但是,当我尝试运行
python manage.py migrate
时,我得到一个错误
未知命令:“migrate”
。我查了一下,发现这意味着我使用的是不支持迁移的Django版本。所以我运行了
python-c“import-django;print(django.get_version())”
来查看django-python使用的是什么版本。结果是1.6.1。但这没有意义,因为当我执行
pip列表时,我得到了Django(1.9.2)。如果我查看settings.py文件,它甚至会说“由使用django 1.9.1的'django admin startproject'生成”


有人知道为什么Python使用的Django版本与使用pip安装的版本不同吗?

也许您使用不同版本的Python python2和python3可以有不同版本的库。尝试运行
python3 manage.py migrate

也许您使用不同版本的python2和python3可以有不同版本的库。尝试运行python3 manage.py migrate

强烈建议您在虚拟环境中运行Django,因为这将使管理Django变得更加容易,并且您不想在系统上弄乱python版本

使用
virtualenv-p/usr/bin/python3.5
将virtualenv与特定的python版本一起使用

然后
pip安装Django
以获取最新版本的Django

编辑:

别忘了,当您处理Django设置和文件时,需要在命令提示符下激活virtualenv

类型
sourcemyprojectenv/bin/activate
,您的提示应该更改为


(myprojectenv)user@host:~/myproject$

强烈建议您在虚拟环境中运行Django,因为这将使管理Django变得更容易,而且您不想在系统上弄乱python版本

使用
virtualenv-p/usr/bin/python3.5
将virtualenv与特定的python版本一起使用

然后
pip安装Django
以获取最新版本的Django

编辑:

别忘了,当您处理Django设置和文件时,需要在命令提示符下激活virtualenv

类型
sourcemyprojectenv/bin/activate
,您的提示应该更改为


(myprojectenv)user@host:~/myproject$

您是否在中执行命令以检查与您在中执行的
pip
相同的virtualenv中的版本?您是否正在使用virtualenvs?您是否正在执行命令以检查与在中执行的
pip
相同的virtualenv中的版本?你在使用virtualenvs吗?我创建了一个virtualenv,我正在运行它的所有功能,现在它似乎可以工作了。当我从全局python安装中使用django时,我仍然不明白为什么这不起作用。Matej是对的,不同的Python版本安装了不同的Django版本吗?@ChrisWillis这是可能的。Django在python2.7上时遇到了一些问题,但我在服务器环境中安装了python3.5的pip,并且出现了奇怪的错误。Virtualenv让事情变得简单多了。您可以使用
python-c“import sys;sys.path=sys.path[1:];import django;print(django.\uuuu path\uuu)”
查看django在您的系统上的位置(这将指示系统路径中的python版本)。@ChrisWillis也签出我的编辑。有时我会尝试运行“python manage.py runserver”或其他命令,但由于命令提示符中未激活virtualenv,因此会出现大量错误。我只是使用绝对路径将virtualenv的python实例作为目标。很高兴知道您可以使用激活命令。我运行了django path命令,得到了
['/usr/lib/python2.7/dist packages/django']
这难道不意味着它应该工作吗?我创建了一个virtualenv,我正在运行所有这些,现在它似乎工作了。当我从全局python安装中使用django时,我仍然不明白为什么这不起作用。Matej是对的,不同的Python版本安装了不同的Django版本吗?@ChrisWillis这是可能的。Django在python2.7上时遇到了一些问题,但我在服务器环境中安装了python3.5的pip,并且出现了奇怪的错误。Virtualenv让事情变得简单多了。您可以使用
python-c“import sys;sys.path=sys.path[1:];import django;print(django.\uuuu path\uuu)”
查看django在您的系统上的位置(这将指示系统路径中的python版本)。@ChrisWillis也签出我的编辑。有时我会尝试运行“python manage.py runserver”或其他命令,但由于命令提示符中未激活virtualenv,因此会出现大量错误。我只是使用绝对路径将virtualenv的python实例作为目标。很高兴知道您可以使用激活命令。我运行了django path命令并得到了
['/usr/lib/python2.7/dist-packages/django']
这难道不意味着它应该工作吗?