細切れ時間で学習しているからか、学んだことが頭に定着しない。
(50代だからとは言わない)
先に進んだ時に、微妙に言葉尻が変わったり、使い方が変わった(ように見えた)りすると、途端にうんうん唸ってしまう性格もあり、色々新しい言葉を学んだの整理していく。
Laravelの要はDB操作をするマイグレーション
マイグレーションはコマンドでテーブルを作成・操作
migration コマンドを実行すると、マイグレーションファイルが作成される。
テーブルをコマンドで作成する機能で、database/migrationsフォルダにテーブルごとに作成されるphpファイルにテーブルの構造を指定するコードが含まれる。
この時、ファイル名に日付が入るが、それはマイグレーションはデータベースのバージョン管理のようなものだから。
チームで開発する時などに、バージョニングすることで新旧が一目瞭然になる。
2つのメソッド(up/down)
移行クラスには、upとdownの2つのメソッドを用意する。
upメソッドはデータベースに新しいテーブル、カラム、またはインデックスを追加するために使用する。
downメソッドでは、upメソッドによって実行する操作を逆にして以前の状態へ戻す。
upメソッドでスキーマを使って、テーブルのカラムを定義した例は以下。
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('tasks', function (Blueprint $table) {
$table->id();
$table->string('name',100);
$table->boolean('status')->default(false);
$table->timestamp('updated_at')->useCurrent()->nullable();
$table->timestamp('created_at')->useCurrent()->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('tasks');
}
};

ここでとても気になっちゃったのが、VSCodeで編集している一部のコードがエラー状態になっていること。例えばこんな感じ。PHP編集用の拡張機能として、PHP DebugとPHP Intelephenseを入れているけど、どうすればよいのろうか。実害はないけど嫌だな。

つづく
コメント