【Laravel 8.x】テーブル追加方法の覚書

Laravel

migrationファイル作成

以下のコマンドを入力して独自のusersテーブルのためのmigrationファイルを作成する。

※独自のusersテーブルを作成するならデフォルトであるusersテーブルを作るためのmigrationファイルは削除しておくこと

php artisan make:migration create_users_table

今日の日付のファイルができたのを確認する。

database/migrations/2021_03_30_053730_create_userdatas_table.php

ファイルの中身は最低限になっている。

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('users');
    }
}

後は以下のように追加したいカラムを追加していく。

    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->userid()->unique();
            $table->timestamps();
        });
    }

テーブルの作成

migrationファイルの設定が完了したら以下のコマンドを実行する。

オプションで今回追加したmigrationだけ反映させるように設定する。

php artisan migrate:refresh --step=1 --path=database/migrations/2021_03_30_053730_create_users_table.php^

phpMyAdminを確認して独自のテーブルが追加されていれば完了となります。

まとめ

コマンド「php artisan migrate:refresh」は既にデータが書き込まれたテーブルも初期化されてしまいます。

とても注意が必要で本当に最初の段階で使うものなんですかね?

まだ分かってないことが多いので今後分かり次第また記事にしたいと思います。

それではまた会いましょう!

コメント

タイトルとURLをコピーしました