2015-07-20 112 views
2

我有一些在"General error: 1005 Can't create table" Using Laravel Schema Build and Foreign Keys更改執行順序

我明白了爲什麼錯誤發生的詳細說明的問題 - 那些孩子在我當前遷移順序也沒有創造我的父表,等等我的外鍵都搞砸了,因爲他們依賴的表還不存在。但是,通過任意更改每個遷移的時間戳以使它們按照正確的順序執行,似乎有點被黑客(並且不方便)更改遷移順序。

2015_06_29_191903_create_child_table 
2015_07_06_144544_create_parent_table 

是否有一個很好的Artisan工具來更改遷移的應用順序?我在網上找不到任何東西,但人們只是按照他們想要的順序編造假時間戳。

+0

您可以更改遷移表中的批號,也可以創建另一個用於創建外鍵的遷移 –

回答

2

您可以手動更改遷移日期,因此遷移的順序如下,但不建議使用。這會弄亂你的遷移表,並會在遷移時遇到錯誤:回滾等等。 如果它沒有太多的痛苦,並且數據庫中沒有太多數據,請刪除它,重新排序修改日期的遷移並遷移全部,新鮮。