はじめに
またLaravelです。新人研修にて開発途中からタイトルにある操作が必要になったのでまとめました。
検証環境
- macOS Catalina ver 10.15.7
- Docker ver 20.10.5
- docker-compose ver 1.29.0
- Laravel ver 7.30.4
- MySQL ver 8.20.3
内容
##マイグレーションの作成
- 基本的な作成の仕方
- ドキュメント(Laravel 7.x)を参照してください。
- モデルと同時に作成したい
- php artisan make:model Test --migration
- Testモデルの作成と"create_tests_table"マイグレーションファイルの生成が行われる。
カラムの追加
- カラムを追加する時に忘れてはならないのが、「どのカラムの後に対象のカラムを追加するか」(これを考慮しないと見づらくて、気持ちが悪いと思います。)
- $table->カラムタイプ(カラム名)->after(カラム名);
- 意図した並び順になっているか、SQLでテーブル構造を確認する
- desc テーブル名;
カラム名の変更(リネーム)
- 「composer require doctrine/dbal」が必要
- ドキュメント(Laravel 7.x)を参照してください。
型の変更
- リネームと同様に「composer require doctrine/dbal」が必要
- ドキュメント(Laravel 7.x)を参照してください。
さいごに
わからないことに遭遇した時、よくドキュメント以外の記事を読んでしまっているので、ドキュメントを最初に読むことをこれから心がけたいと思います。
参考サイト
- 「Laravel 7.x リリースノート」
- 「Laravel:カラムを追加する」
- 「Laravel マイグレーションでカラム追加後の列順序が気持ち悪い」