2014-06-24 67 views
1

我檢查了文檔,但無法確認:如果運行php artisan migrate:rollback,請執行各種down()命令以相反的順序運行?舉例來說,如果我有遷移文件:Laravel 4遷移回滾是否以相反的順序執行?

2014-07-01_first_migration.php 
2014-07-01_second_migration.php 
2014-07-01_third_migration.php 

是否回滾火ThirdMigration->向下(),然後SecondMigration->向下(),最後FirstMigration->向下()?

+0

應該 - 否則有可能是不一致和錯誤。我沒有嘗試過,但我無法想象它會以其他方式。 – Kryten

回答

1

簡短的回答是肯定的,那就是它的工作原理。

較長的答案是肯定的 - 這是因爲遷移可能包括諸如將列添加到表格之類的內容。如果你沒有按照相反的順序運行它們,那麼在刪除列之前將刪除表格!

有幾種方法可以反轉您的遷移。這隻會扭轉過去的遷移操作:

php artisan migrate:rollback 

,這將扭轉所有的遷移回您最初的DB:

php artisan migrate:reset 
+1

好的 - 這就是我推測的,但我找不到任何具體的說法。謝謝! – Anthony