mysql でデータベースを作成し、テーブルを migration によって作成します。
慣れないと混乱するので、何度でも最初からやり直します。
プロジェクトの作成
プロジェクト名は「imgup」とします。
composer create-project laravel/laravel imgup
データベースの設定
データベースは mysql にします。
データベース名は「imgdb」とします。
phpmyadmin かコマンドラインで予めデータベースを作成しておきます。
.env を編集します。
.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=imgdb
DB_USERNAME=root
DB_PASSWORD=pass
model の作成
データベース作成のための model を作成します。
model 名は「Image」です。
php artisan make:model Image
作成された Image.php を編集します。
app/Models/Image.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Image extends Model
{
protected $fillable = [
'name',
'path',
];
}
migration ファイルの作成と migration
migration ファイルを作成します。
model は Image なので作成するテーブル名は images です。
php artisan make:migration create_images_table --create=images
database/migrations に作成された migration ファイルを編集します。
database/migrations/2022_11_21_072439_create_images_table.php
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('images', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('path');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('images');
}
};
migration します。
php artisan migrate
phpmyadmin で imgdb データベースと images の構造を確認します。
データベースは、

images テーブルは、

何だかすごいですが、明示的ではないのですがなかなか慣れないですね。