41 lines
1023 B
PHP
41 lines
1023 B
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
|
|
|
use App\Modules\BaseModule;
|
|
use Illuminate\Database\Seeder;
|
|
use Illuminate\Support\Facades\File;
|
|
|
|
class DatabaseSeeder extends Seeder
|
|
{
|
|
/**
|
|
* Seed the application's database.
|
|
*/
|
|
public function run(): void
|
|
{
|
|
$seeders = [];
|
|
|
|
modules()->each(function (BaseModule $module) use (&$seeders) {
|
|
$seedersPath = $module->path.'/Database/Seeders';
|
|
|
|
if (is_dir($seedersPath)) {
|
|
$files = File::files($seedersPath);
|
|
|
|
foreach ($files as $file) {
|
|
$file->getFilenameWithoutExtension();
|
|
|
|
$moduleClass = 'App\\Modules\\'.$module->name.'\\Database\\Seeders\\'.$file->getFilenameWithoutExtension();
|
|
|
|
if (class_exists($moduleClass)) {
|
|
$seeders[] = $moduleClass;
|
|
}
|
|
}
|
|
}
|
|
});
|
|
|
|
$this->call($seeders);
|
|
}
|
|
}
|