I have an enums folder created manually in the root directory of a Laravel project. Currently, there is only one file called TransactionTypes and I want to use it in my migration (in another file too in the future). However, when I test the app, it throws an error.
Class "Enums\TransactionTypes" not found
My migration that uses this enum look like this
<?php
use App\Models\Foodstuff;
use Enums\TransactionTypes;
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('transactions', function (Blueprint $table) {
$table->id();
$table->foreignIdFor(Foodstuff::class);
$table->enum('type', TransactionTypes::cases()); // HERE
$table->unsignedInteger('stock');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('transactions');
}
};
I have already declared a namespace in my enum
<?php
namespace Enums;
enum TransactionTypes
{
case in;
case out;
case cancelled;
case returned;
}
I tried to execute sail composer dump-autoload but it still doesn't work. How can I fix it?