我正在尝试关注this tutorial,但我坚持第五步。
执行时
[〜/ Django Projects / netmag $] python manage.py syncdb
我收到以下错误消息:
Unknown command: 'syncdb'
Type 'manage.py help' for usage.
这里是./manage.py help
的输出不包含syncdb
命令。我该如何添加它?
感谢您的帮助!
当我运行迁移时,我收到此错误:
在settings.py中“创建新内容类型时出错。请确保内容类型” RuntimeError:创建新内容类型时出错。请确认 在尝试单独迁移应用程序之前,会迁移contenttypes。
:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admindocs',
'blog',
]
如果我从settings.py中移除'blog',
:
:~/Django Projects/netmag$ python manage.py migrate blog
CommandError: App 'blog' does not have migrations.
:~/Django Projects/netmag$ python manage.py makemigrations blog
App 'blog' could not be found. Is it in INSTALLED_APPS?
答案 0 :(得分:174)
syncdb
命令为deprecated。请改用python manage.py migrate
。
答案 1 :(得分:12)
您必须使用python manage.py migrate
而不是python manage.py syncdb
答案 2 :(得分:7)
在
下面运行python manage.py makemigrations
结果
Migrations for 'blog':
blog/migrations/0001_initial.py:
- Create model Blog
并在此之后 python manage.py migrate
结果
Operations to perform:
Apply all migrations: admin, blog, auth, contenttypes, sessions
Running migrations:
Applying article.0001_initial... OK
答案 3 :(得分:0)
您可以分阶段执行此操作,假设您有一个名为“ example”的应用:
您还可以像这样查看所有迁移:python manage.py showmigrations
。
如果您不想提交它,请在执行步骤4之前转到该文件夹并将其移至某个位置或将其删除。