起因:
CLI模式,定時任務。同步其他系統中的DB數據,通過視圖的方式。
歷程:
- 原腳本已經寫好,實在已經有的基礎上修改,增加新的字段。
- 加了字段后,執行,但始終不成功,表里記錄的utime也是能更新成功的,但唯獨新加的字段更新失敗。
- 嘗試打印$model->validate()結果沒問題。$model->save()返回也是true。$model->errors()返回是空。全都沒問題。
- 突然想起,新加的字段,模型類里沒有加,於是改成$model->save(false),關閉驗證。依舊不成功。
解決方案:
模型類里的Rules增加新字段的驗證規則,或者字段設置成safe。
總結:
坑爹啊,以前都是save(false)就OK了,這次居然不行。。
分析應該是語法的問題,這次數據賦值方式是
$info->attributes = $data;