1. Delete your migrations folder
2. In the database: DELETE FROM django_migrations WHERE app = 'app_name'.
You could alternatively just truncate this table.
3. python manage.py makemigrations
4. python manage.py migrate --fake
如果您在django 1.9.5工作,这是解决此问题的100%解决方案:
1. Delete your migrations folder
2. In the database: DELETE FROM django_migrations WHERE app = 'app_name'.
You could alternatively just truncate this table.
3. python manage.py makemigrations app_name
4. python manage.py migrate
让Django重新创建手动删除的表不是一个简单的方法。一旦您的数据库被手动更改,Django的数据库视图(来自迁移)就不同于实际情况,并且可能很难修复。
如果运行sqlmigrate命令,它将显示创建表所需的SQL。可以在数据库shell中运行sql。假设您的应用程序名是
students
,并且创建表的迁移是00XX_create_students.py
,那么您将执行以下操作:如果有指向或来自students表的外键,则还必须创建约束。
在django 1.7中,您可以尝试:
如果您在django 1.9.5工作,这是解决此问题的100%解决方案:
这对我来说是100%有效的!
相关问题 更多 >
编程相关推荐