本系列文的環境狀態,可點擊此連結後花園環境參考
昨天 2019/10/16 寫的那篇,不要輕易 Rollback ,那個 function down()
會刪了你的 table ,今天 2019/10/17 已更新此篇 ✾後花園D31✾- Laravel 舊表格新增欄位(列名)錯誤。
可以拿上一篇新增列名的 Migration 試做此功能。
最簡單的方式,就當作它會去執行上一個動作的 function down()
內的程式,應該會比較好理解,所以它跟 function up()
做的事就會是相反的。
對照起來像這樣:
function up | function down |
---|---|
新增欄位 | 刪除欄位 |
變更新名 | 變回舊名 |
刪除欄位 | 重做舊列名(新增列名) |
查看 migrate 做過的事,有點像 log 功能
$ php artisan migrate:status
接着 Rollback 前,請務必看好你的 down() 寫了什麼鬼
確定前一個版本 migration 的 down 會執行你想做的事嗎?
滾回前一個地方去~~~
這行指令請小心,即將會根據你寫的 down 做回應。
$ php artisan migrate:rollback
Terminal 的狀況
先查看目前狀態
Laravel 程式碼內的狀況
MySQL 的狀況
新增列名的 Migration ,如果 Rollback ,就是移除列名囉!
然後 Rollback 完,如果覺得自己錯了,又想新增回列名,只要再輸入:
$ php artisan migrate
就會再次執行被 Rollback 的 Migration 的 function up()
,但裡面內容就沒有了。
參考連結:
❁ Laravel 官方 - Database: Migrations