1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Laravelでマイグレーションしてモデルファイルを作成する

Last updated at Posted at 2019-07-22

LaravelでDBを扱うためにテーブル作成とモデルファイルの作成方法を紹介します。

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

下記コマンドでマイグレーションファイルを作成します。

php artisan make:migration create_shops_table --create=shops

__create_shops_table__部分はマイグレーションのファイル名になりますので任意に書き換えてください。
__--create=__の後の__shops__の部分はテーブル名になりますので任意に書き換えてください。
Laravelでは__テーブル名は複数形__で__モデル名称は単数形__というのが標準の命名規則になります。
この記事では
・テーブル名
shops
・モデル名
Shop
という名称で進めます。

すると__プロジェクトルート/database/migrations__にマイグレーションファイルが生成されます。

<?php

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

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

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

これを下記のように変更します。

<?php

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

class CreateShopsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('shops', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('name')->nullable()->comment('店舗名');
            $table->string('sub_name')->nullable()->comment('支店名');
            $table->timestamps();
        });
    }

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

マイグレーションファイルを編集したら下記のコマンドでマイグレーションを実行します。

php artisan migrate

こうするとDBにshopsテーブルが作成されます。

モデルファイルの作成

マイグレーションを実行したら下記コマンドでモデルファイルを作成します。

php artisan make:model Shop

すると__プロジェクトルート/app__に下記のような__Shop.php__というファイルが作成されます。

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Shop extends Model
{
    //
}
1
1
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?