Laravelでマイグレーションファイルを消してから作り直したいと思ったことはありませんか?
テーブルに変更や修正をしたい時、それをやるためのコマンドは用意されていますが、
変更や修正が多い場合など、いっそ初めから作り直した直したい時もあると思います。
それなら、マイグレーションファイルを手動で削除(ゴミ箱に移動)すればいいのでは?と
思うかもしれません。
しかし、マイグレート済みのファイルを単に削除してしまうとエラーになってしまいます。
今回は、エラーを回避しマイグレートファイルを削除して新しく作り直す方法を説明します。
ただし、この方法では既存テーブル全て削除しすることになるので、
もしテーブルの情報を消したくない場合はこの方法はつかませんのでご注意ください。
まずは、下記コマンドを実行します。
php artisan migrate:reset
これをすることで、これまでのマイグレートを全てロールバック(マイグレートを実施前の状態に戻す)
をしてくれます。これで、過去に実施した全てのマイグレートが無かったことになります。
ここで、作り直したいマイグレーションファイルを作成します。
やり方は通常と同じでOKです。
php artisan make:migration create_XXXX_table
続いて、下記コマンドを実行します。
php artisan migrate:fresh
これを実行することで、テーブルが削除されマイグレートをやり直してくれます。
seederでデータを作っている場合は下記コマンドでデータを作成しましょう
[参考]
https://qiita.com/Atsu_Tech/items/5d6a871424c1b9f32be7
php artisan db:seed
参考になれば幸いです。