以下是我一直在做的事情,我认为这不是正确的解决方案:
db.sqlite3
文件makemigrations
,然后migrate
如果我不删除db.sqlite3
文件,当我尝试运行makemigrations
然后migrate
时,我会这样做:
manage.py@pyweb > 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
manage.py@pyweb > 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
为避免删除db文件,我错过了哪一步?
答案 0 :(得分:2)
更改模型后,您只需
python manage.py makemigrations your_app
然后使用
进行迁移python manage.py migrate
这样做你不必删除你的数据库。 我希望这有助于你..但是不要忘记在对模型应用更改后运行makemigrations