2
下面是我在做什麼的時候,我想這不是正確的解決方案:Pycharm:makemigrations和遷移忽略了我的變化
- 修改我的模型
- 刪除
db.sqlite3
文件 - 推出
makemigrations
然後migrate
如果我不刪除db.sqlite3
文件我有這樣的,當我嘗試運行makemigrations
然後migrate
:
[email protected] > makemigrations
"C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\bin\runnerw.exe" C:\Python34\python.exe "C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\helpers\pycharm\django_manage.py" makemigrations C:/Users/Olivier/PycharmProjects/pyweb
No changes detected
Process finished with exit code 0
[email protected] > migrate
"C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\bin\runnerw.exe" C:\Python34\python.exe "C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\helpers\pycharm\django_manage.py" migrate C:/Users/Olivier/PycharmProjects/pyweb
Operations to perform:
Synchronize unmigrated apps: staticfiles, messages, produits
Apply all migrations: sessions, auth, contenttypes, admin
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
No migrations to apply.
Process finished with exit code 0
什麼步驟我錯過了避免刪除數據庫文件?
當我這樣做,我得到:'django.db.utils.OperationalError:表「xxx」已存在' –
然後你已經在遷移過程中出現了問題。嘗試評論您的模型並通過上述步驟生成遷移,然後再次取消註釋並再次生成遷移並遷移它 – gamer
如果您可以閱讀遷移文件,那麼只需刪除該遷移文件,即可創建剛剛創建的表。並運行遷移,將幫助你..但要小心只刪除已創建您的XXX表的遷移 – gamer