laravel9のmigrationコマンドのファイル名について
どうしてcreate_flights_tableとするとcreate用のマイグレーションファイルが作成されるのか?
どうしてadd_votes_to_users_tableとするとupdate用のマイグレーションファイルが作成されるのか?
ちょっと気になったのでサクッと調べてみました。
create_<テーブル名>_tableの名前になっている場合はcreate用のmigrationファイルが作成される。
php artisan make:migration create_flights_table
_to_、_from_、_in_<テーブル名>_tableの名前になっている場合はUpdate用のmigrationファイルが作成される。
php artisan make:migration add_votes_to_users_table
php artisan make:migration add_votes_from_users_table
php artisan make:migration add_votes_in_users_table
詳細には下記な感じです。(正規表現で決めているみたい)
const CREATE_PATTERNS = [
'/^create_(\w+)_table$/',
'/^create_(\w+)$/',
];
const CHANGE_PATTERNS = [
'/_(to|from|in)_(\w+)_table$/',
'/_(to|from|in)_(\w+)$/',
];
下記、参考画像です。
またYoutubeでも解説してます。