前言:django1.8版本出現這種問題,關於標題不好命令,直接看正文問題描述! 問題描述: 在已經生成了models.py中表的情況下,更改了modes.py中的表,但是syncdb不起作用報錯。於是我用了個死方法,登錄MySQl手動把表刪了,也刪了應用中migrations文件夾,然後再進行 m
前言:django1.8版本出現這種問題,關於標題不好命令,直接看正文問題描述!
問題描述:
在已經生成了models.py中表的情況下,更改了modes.py中的表,但是syncdb不起作用報錯。於是我用了個死方法,登錄MySQl手動把表刪了,也刪了應用中migrations文件夾,然後再進行 makemigrations , migrate 和 syncdb,但是去mysql中查看並沒有創建相應的表。
後臺登錄顯示: ProgrammingError at /admin/home/article/ (1146, "Table 'alwme_db.home_article' doesn't exist")
(alwme)zhg@hang:~/alwme/alwme$ python manage.py makemigrations home Migrations for 'home': 0001_initial.py: - Create model Article
(alwme)zhg@hang:~/alwme/alwme$ python manage.py migrate Operations to perform: Apply all migrations: admin, home, contenttypes, auth, sessions Running migrations: No migrations to apply.
(alwme)zhg@hang:~/alwme/alwme$ python manage.py syncdb Operations to perform: Apply all migrations: admin, home, contenttypes, auth, sessions Running migrations: No migrations to apply.
解決辦法:
在migrations目錄中,刪除init.py 的文件
比如,是AA app下 那麼刪除AA下migrations目錄中的init.py 的文件,然後再執行python manage.py migrate