django models 增加欄位(或新表)後如何同步到資料庫
阿新 • • 發佈:2019-02-07
最近對一個django專案進行修改,其中在models.py添加了新的欄位,需要同步到資料庫。
嘗試使用
python manage.py syncdb
提示成功,但未對資料庫進行任何操作,到資料庫中檢視,新欄位並沒有同步進來。
解決辦法如下:
python manage.py shell
進入後
from django.db import connection
新建一個cursor,用於連線
cursor=conneciton.cursor()
下一步就可以進行對資料庫的操作了,把在model中定義的量加入表中:
cursor.execute('ALTER TABLE table_name add port Integer default 0')
sql 語法:ALTER TABLE table_name add col_name col_type default ..
到這步已經新增完成
****************************************************************************************************************************** 補充: 下面補充一下,如果在已有django專案裡面新建一張表,該如何操作: 例如,在app下面models.py中新加一張表後,嘗試使用 python manage.py syncdb此時應該可以進行同步了,新表會提示建立在資料庫中