Laravelでマイグレーションを使ってテーブルにカラムを追加する方法を説明します。
まずartisanコマンドでマイグレーションファイルのテンプレートを作ります。
> php artisan make:migration add_local_to_user_table --table=users
Created Migration: 2020_03_16_061104_add_local_to_user_table
database/migrations/2020_03_16_061104_add_local_to_user_table.php
というファイルが自動生成されるのでこれを編集します。
「2020_03_16_061104_」という部分はファイルが作られた日時が自動的にい入っています。
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddLocalToUserTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('users', function (Blueprint $table) {
// マイグレーション実行時に文字列型のカラムを追加する
$table->string('address');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('users', function (Blueprint $table) {
// ロールバック時にカラムを削除する
$table->dropColumn('address');
});
}
}
up()メソッドにはマイグレーションを実行した時の処理を追加します。
down()にはマイグレーションをロールバックした時の処理を追加します。
ファイルを編集したらマイグレーションを実行します。
> php artisan migrate
Migrating: 2020_03_16_061104_add_local_to_user_table
Migrated: 2020_03_16_061104_add_local_to_user_table (0.48 seconds)
これでマイグレーションによりカラムが追加されます。
以上です。
逆引きLaravel目次
Laravelでルートパラメータ(パスパラメータ)を取得する
LaravelでフォームのMethodをPUTやDELETEに変える
Laravelでフォームリクエストの型を定義してバリデーションする
Laravelのコントローラのアクションでモデル型を受け取る(モデル結合ルート)
LaravelでCookie(クッキー)の取得、書き込み、削除をする
Laradock
Laradockのworkspaceの共有ディレクトリを変更する
データベース
Laravelでデータベースのテーブル名を変更する(マイグレーション)
Laravelでデータベースのテーブルにカラムを追加する(マイグレーション)
Laravelで指定したカラムの次にカラムを追加する(マイグレーション)
Laravelでテーブルのカラム名を変更する(マイグレーション)
Laravelのmigrationでテーブルにunique制約を追加する
ルーティング
Laravelで特定のプレフィックスがついたURLのルーティングをまとめて定義する
ミドルウェア
認証
Laravelで未ログインユーザーがアクセスしたらログインフォームを表示する
LaravelのViewでログイン状態によって表示切替する方法