3 回答
TA貢獻1858條經(jīng)驗 獲得超8個贊
無法直接指定參數(shù)。
如果要通過命令行指定參數(shù),可以使用環(huán)境變量。
class UsersTableSeeder extends Seeder
{
public function run()
{
$limit = env('SEEDER_LIMIT', 1);
echo $this->limit;
}
}
像這樣調(diào)用:
SEEDER_LIMIT=10 php artisan db:seed --class=UsersTableSeeder
TA貢獻1851條經(jīng)驗 獲得超5個贊
據(jù)我所知,播種機沒有參數(shù)之類的東西,但您可以自己實現(xiàn)。您可以創(chuàng)建一個接受參數(shù)的新命令,并使用這些附加參數(shù)以編程方式調(diào)用播種器。
這樣的事情應(yīng)該可以解決問題:
use Illuminate\Database\Seeder;
class UsersTableSeeder extends Seeder
{
public function run(int $limit)
{
echo $limit;
// Seed some stuff
}
}
namespace App\Console\Commands;
use Illuminate\Console\Command;
use UsersTableSeeder;
class SeedCommand extends Command
{
protected $signature = 'app:seed {limit}';
public function handle(UsersTableSeeder $seeder)
{
$limit = $this->argument('limit');
$seeder->run($limit);
}
}
TA貢獻1943條經(jīng)驗 獲得超7個贊
你可以這樣設(shè)置:
public function run($count = 1)
然后你可以通過這種方式傳遞參數(shù):
$this->call(ClientSeeder::class, false, ['count' => 500]);
- 3 回答
- 0 關(guān)注
- 120 瀏覽
添加回答
舉報
