9cubed
ブログ | Tailwind | Vite | Python | MariaDB | Node.js | Linux | PowerShell | Docker | Git | その他 | 将棋ウォーズ | 歌の練習
Webサーバー講座

第26回 Laravelでテーブルとデータの作成

公開日:2021-04-12
更新日:2021-04-12

1. 概要

Laravelでテーブルとデータを作成する方法について説明しています。

環境は前回と同じものを使います。

参考:Laravel の公式サイト

2. 動画



3. テーブルの作成


3. 1 マイグレーションの作成

php artisan make:migration マイグレーション名

(例)
php artisan make:migration create_articles_table

出力先 : database/migrations/

3. 2 マイグレーションの実装

database/migrations/ 配下に出力されたファイルを開き、up() にテーブルの定義をします。
public function up()
{
    Schema::create('articles', function (Blueprint $table) {
        $table->id();
		$table->string('title');
		$table->text('body');
        $table->timestamps();
    });
}

3. 3 マイグレーションの実行

php artisan migrate

マイグレーションを修正して、マイグレーションを再実行したい場合には、以下のコマンドを実行します。
【注意】テーブルが再作成されるため、データは全て削除されます。
php artisan migrate:refresh

4. データの作成


4.1 シーダーの作成

php artisan make:seeder シーダー名

(例)
php artisan make:seeder ArticlesTableSeeder

出力先:database/seeders

4.2 シーダーの実装

public function run()
{
    $faker = \Faker\Factory::create();
    for ($i = 1; $i<= 10; $i++) {
        \DB::table('articles')->insert([
            'title' => $faker->word(),
            'body' => $faker->text(),
        ]);
    }
}

4.3 DatabaseSeeder.php の修正

database/seeders/DatabaseSeeder.php から作成したシーダーを呼び出すようにします。
public function run()
{
    $this->call(ArticlesTableSeeder::class);
}

5. 複数形の確認

Laravel では、モデルを単数形、テーブル名を複数形にする命名規則があります。
例外もあるため、事前に Str::plural() を使って確認しておくと良いです。

use Illuminate\Support\Str;

var_dump(Str::plural('article')); // articles
var_dump(Str::plural('family'));  // families
var_dump(Str::plural('people'));  // people
var_dump(Str::plural('data'));    // data

YouTube X

新着一覧

  • テーブル結合(CROSS JOIN、INNER JOIN、LEFT JOIN)MariaDB
  • 楽観ロック・悲観ロックMariaDB
  • カレントリードMariaDB
  • インデックスMariaDB
  • 論理削除(ソフトデリート)MariaDB
  • awk(オーク)の使い方についてLinux
  • NOT NULL 制約と NULL を許容した時の動作MariaDB
  • 外部キー制約MariaDB
  • MySQL と MariaDB の関係MariaDB
  • Docker で PostgreSQL のコンテナの使用Linux

アーカイブ

  • 2026/01
  • 2025/12
  • 2025/11
  • 2025/10
  • 2025/09
  • 2025/08
  • /00

以前のカテゴリー一覧

  • CakePHP3
  • CentOS7
  • HTML・CSS・JavaScript
  • Haskell
  • JavaScript
  • Kotlin
  • Laravel5
  • PHP
  • Python
  • Ruby
  • RubyOnRails5
  • TypeScript
  • Vue.js
  • Webサーバ講座
  • Webプログラミング講座
  • jQuery
  • linux
  • パソコン講座
  • ブログ
  • プログラミング講座
  • メモ帳作成講座
  • 数学

Copyright © 9cubed. All Rights Reserved.

プライバシーポリシー 利用規約
▲