dbt / command-seeder
Laravel 的基于命令的种子工具
1.0.0
2023-05-01 15:09 UTC
Requires
- php: ^8.1
- laravel/framework: ^8.0|^9.0|^10.0
Requires (Dev)
- ext-pcov: *
- laravel/pint: ^1.10
- orchestra/testbench: ^6.0|^7.0|^8.0
- phpunit/phpunit: ^9.0
README
一个 Artisan 控制台命令允许使用参数调用种子文件。
安装
composer require --dev dbt/command-seeder
配置
发布配置文件
php artisan vendor:publish --provider="Dbt\CommandSeeder\CommandSeederServiceProvider" --tag="config"
然后,将 seeders
键填充为如下映射
'seeders' => [ 'my-seeder' => MySeeder::class, ];
种子文件
种子文件必须扩展 CommandSeederAbstract
类。每个种子文件必须提供一组参数
public function argumentNames(): ArgumentNames { return new ArgumentNames('firstArg', 'secondArg', 'etc'); }
这些参数名称将与提供的 CLI 参数一一对应,并将传递到 run
方法中。如果必需的参数数量与提供的参数数量不匹配,将抛出异常。
此外,命令的 OutputStyle
会被传递到种子文件的构造函数中,这样你就可以从种子文件中输出到控制台。
public function run(Arguments $arguments, int $quantity): void { $firstArg = $arguments->get('firstArg'); $allArgs = $arguments->all(); // Create some models... $this->output->info('Write some output...'); }
用法
php artisan seed:command {seederName} {quantity} {...arguments}