Minecraft Unofficial Forum | マインクラフト非公式フォーラム
マインクラフト日本非公式ユーザフォーラム様のサービス停止に伴い、本フォーラムを作成しました。

マインクラフト非公式フォーラムへようこそ」を一読後、登録をお願いいたします。

その他 【Laravel8】apiアクセス時に Class "CreateUsersTable" not found

fuyutsuki

Member

環境​

  • PHP 8.0.1
  • Laravel 8

Laravel8で localhost:8000/api/v1/users へのアクセス時以下の画像のエラーが出力されるのですが、クラスは database\migrations\2021_03_09_152121_create_users_table.phpCreateUsersTable として定義していることは確認済みです。
原因がわかる方がいればご教授いただけると嬉しいです。

1615620775215.png


2021_03_09_152121_create_users_table.php​

PHP:
<?php

declare(strict_types=1);

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

/**
 * Class CreateUsersTable
 */
class CreateUsersTable extends Migration {

    public const TABLE_NAME = "users";

    public function up() {
        Schema::create(self::TABLE_NAME, function (Blueprint $table) {
            $table->string("name", 20)->unique()->index()->primary();
            $table->timestamp("updated_at")->useCurrent();
            $table->timestamp("created_at")->useCurrent();
        });
    }

    public function down() {
        Schema::dropIfExists(self::TABLE_NAME);
    }
}
 
解決策
classmapに書くべきものが間違っていました。以下のように書いた後 composer dump-autoload を実行して解決しました。

JSON:
"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Database\\Factories\\": "database/factories/",
        "Database\\Seeders\\"...

fuyutsuki

Member
Composer.json にある autoload の項目にマイグレーションファイルは追加されていますか
JSON:
"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Database\\Factories\\": "database/factories/",
        "Database\\Seeders\\": "database/seeders/"
    },
    "classmap": [
        "database/migrations/"
    ]
},
というふうに追加して composer dump-autoload を実行しましたが、エラー内容は変わらずです
 
Last edited:
Upvote 0
Top