我的迁移出了点问题,我在模型中添加了一个新的datetimefield然后我使用了makemigrations并进行了迁移。
python manage.py makemigrations
python manage.py migrate
但在此之后,迁移得到了“表已存在错误”。我想我可以假装迁移并重新开始,所以我做了
python manage.py makemigrations --fake core
Operations to perform:
Apply all migrations: core
Running migrations:
Rendering model states... DONE
Applying core.0001_initial... FAKED
Applying core.0002_auto_20150525_1331... FAKED
Applying core.0003_auto_20150525_1348... FAKED
Applying core.0004_processo_data_atualizacao... FAKED
但是我刚刚创建的新迁移也是伪造的(当然!)。
执行此操作后,如何重做迁移(在本例中为core.0004)的正确方法?
答案 0 :(得分:87)
您应首先使用--fake
将当前状态设置为0003(假设0003是您实际应用的最后一次迁移):
python manage.py migrate --fake core 0003
然后像往常一样继续:
python manage.py migrate core
相关文档:https://docs.djangoproject.com/en/dev/ref/django-admin/#migrate