Re: [問題] Django Migration設定出錯

作者: drm343 (一卡)   2015-10-01 22:20:59
※ 引述《panasonic89 (panasonic)》之銘言:
: 在 manage.py makemigrations的時候 似乎因為int 沒有initial value
: 所以他請我輸入
: 當時看他說明寫 datetime 也就照著打下去
: 結果在更新的時候會出現
: int() argument must be a string or a number, not 'datetime.datetime'
: 於是上網查詢了一下
: 我修改了 0003 的migrate的資訊 把 datetime改為 default=0;
: (也是唯一一個有看到datetime的migration file)
: Server可以正常run 但執行首頁會出現一樣的問題
: 可以看到兩張table有重新產生 可是執行首頁依然出現
: int() argument must be a string or a number, not 'datetime.datetime'
: 目前確定專案目錄下資料夾 migrations 已經不存在
: 想請問是不是還有哪些地方有所遺漏
: 以下附上部分錯誤訊息與 model程式碼
: #models.py
: class ContestEvent(models.Model):
: year = models.IntegerField(default=0)
: month = models.IntegerField(default=0)
: event_name = models.TextField(default="A")
: event_member = models.TextField(default="A")
: date_of_event = models.IntegerField(default=0) <=這欄位是被我誤填的
: datetime為預設值的,現在修正為這樣
: 感謝各位指點迷津
下面以 django 1.8 + mysql 5.6 做說明,1.7 以前可能會不同,
請自行對照官網說明
先問一下,你砍 migration 前有沒有先跑過下面這個指令把 app
的版本回復到 0002,但要注意的是 fake 後不一定會回復到先前
的 migration 狀態,例如我先新增兩個欄位 a b,之後砍掉 b,
再 fake 回前一版,b 欄位是不會加回去的,要自己寫 sql 手動
加回去
./manage.py migrate

Links booklink

Contact Us: admin [ a t ] ucptt.com