看板 PHP 關於我們 聯絡資訊
※ 引述《youneverknow (睡覺一直想)》之銘言: : 小弟測試的時候手殘直接drop了DB裡的所有table : 重新執行php artisan migrate:refresh : 會報出找不到table去drop的錯 : 因而無法執行 : 請問這種狀況要怎麼解決..... : 謝謝 #我用laravel 4.1 首先,如果你說的是真的: 手殘直接drop了DB裡的所有table 你migrate:refresh報的錯誤不會是找不到table drop 而是沒有migrations 這個 table ( migrations table裡面放的是framwork migrate的紀錄 framework會依據裡面的內容來檢查現migrate到哪,而去執行相關動作 ) 假設migrations table還在,而其他table都不見 你需要做的事情是把migrations清空 or 也把他砍了 直接run migrate 就好,不要refresh refresh 代表執行兩個動作: rollback and migrate framework發現migrations裡有你migrate的紀錄,想要rollback 而migrate file 裡的 down,有drop table的動作,但沒table讓它drop 才會出現你說的錯誤訊息 小注意 laravel refresh會把所有的migrate file都run 成 batch 1 為何不幫忙紀錄batch呢? 這我就不曉得了... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.32.8.201 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1413783665.A.FB4.html
GTim: 推 最近剛好遇到相同問題 10/25 03:38
youneverknow: 感謝,問題已經解決 10/28 16:48