Laravelのマイグレーションファイル作成例

下記のようなマイグレーションファイルを作成し、テーブルを作成しています。参考にしてみてください。

<?php

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

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

            /**
             * 共通
             */
            $table->engine = 'InnoDB';
            $table->charset = 'utf8';
            $table->collation = 'utf8_general_ci';

            /**
             * 個別設定
             */
            $table->increments('id')->comment('ユーザID');
            $table->string('name', 64)->nullable(false)->comment('ユーザ名');
            $table->string('nick_name', 64)->nullable()->comment('ニックネーム');
            $table->string('email', 128)->unique()->comment('メールアドレス');
            $table->string('password', 128)->nullable(false)->comment('パスワード');
            $table->rememberToken();

            /**
             * 共通
             */
            $table->datetime('deleted_at')->nullable()->comment('論理削除日時');
            $table->datetime('created_at')->default(DB::raw('CURRENT_TIMESTAMP'))->comment('作成日時');
            $table->datetime('updated_at')->default(DB::raw('CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP'))->comment('更新日時');
        });

        /**
         * 個別設定
         */
        DB::statement("ALTER TABLE users COMMENT 'ユーザテーブル'");
    }

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

おすすめ記事
© 2016-2017 Fridles All Rights Reserved.