我正在尝试关注Django
教程,当我输入python manage.py makemigrations polls
时,我遇到了以下错误
Unknown command: 'makemigrations'
这是教程的link,我成功地完成了所有前面的步骤,我不确定现在出了什么问题或者如何解决它。 P.S。:我已经在INSTALLED_APPS中加入了“民意调查”!
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'polls',
'South',
)
答案:我必须将INSTALLED_APPS修改为:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'polls',
)
并且还使用了此命令:python manage.py syncdb
答案 0 :(得分:22)
首次在2014年9月2日正式发布的1.7版本中添加了迁移。您需要确保您的教程与您正在使用的Django版本相匹配。例如,本教程的这个版本涵盖了1.9:
https://docs.djangoproject.com/en/1.9/intro/tutorial01/
或者,如果您使用的是旧版本的Django,则可以将该URL中的“1.9”更改为您所使用的任何版本(返回1.3)。或者使用文档页面上的下拉菜单选择版本并搜索“教程”。
答案 1 :(得分:3)
找出您正在运行的django版本(thanks @BradyEmerso n):
python -c "import django; print(django.get_version())"
如果大于1.8:
pip install --upgrade django
答案 2 :(得分:2)
我使用的是1.9版,但仍然出现此错误。我有未应用的迁移,这是我案例中的根本原因。我跑了python manage.py migrate
'应用它们,它对我有用。
答案 3 :(得分:2)
在django makemigration在1.7之后添加,所以如果你使用旧版本的Django,那么你必须更改settings.py并在已安装的应用程序中添加你的应用程序,如
INSTALLED_APPS = (
'Demo',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
然后你可以运行命令
python manage.py syncdb
答案 4 :(得分:2)
您需要先加载虚拟环境。
使用以下代码进行Linux / OSX:
source venv/bin/active
以下Windows代码
source venv/Scripts/activate
答案 5 :(得分:0)
我做了以下(对于python版本3.6.4)以解决此问题:
干杯
答案 6 :(得分:0)
我第一次将以下代码添加到project_name \ settings.py文件中。
`INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
#Django REST Framework
'rest_framework',
#Games application
'games.apps.GamesConfig',
]`
保存后,在运行以下代码时出现错误。
`python manage.py makemigrations games`
然后,我检查了settings.py文件,我意识到有两个INSTALLED_APPS,而第二个没有。当我添加这些代码时,这些代码就起作用了。
`#Django REST Framework
'rest_framework',
#Games application
'games.apps.GamesConfig',`