运行 php artisan ide:models 自动
Running php artisan ide:models automatically
我通过make:command
创建命令
php artisan make:command ResetDBCommand
然后我想运行处理程序中的两个命令
php artisan ide:models
php artisan db:seed
但是,我无法通过以下代码自动触发这两个命令
Artisan::call('db:seed');
$console->writeln('db:seed done.');
Artisan::call('ide:models--force');
$console->writeln('ide:models done.');
错误:
The command "ide:models--force" does not exist.
我该怎么做?
正确的命令是ide-helper:models
如果你这样做你可以确认这一点:
php artisan help ide:models
你得到:
[...]
Usage:
ide-helper:models [options] [--] [<model>...]
表示在命令行调用时Laravel确实自动解析该命令。然而,当以编程方式调用它时,这种解析机制不存在。
另一个问题是 --force
在 ide-helper:models
中不是有效选项,但您可以这样做:
Artisan::call('db:seed');
$console->writeln('db:seed done.');
// Uncomment one of the two
// Artisan::call('ide-helper:models --nowrite'); // Only write metadata in the _ide_helper_models.php file
// Artisan::call('ide-helper:models --write'); // Write metadata on models
// ------
$console->writeln('ide:models done.');
选择你喜欢的那个
在Laravel 8
中测试了以上内容
我通过make:command
创建命令php artisan make:command ResetDBCommand
然后我想运行处理程序中的两个命令
php artisan ide:models
php artisan db:seed
但是,我无法通过以下代码自动触发这两个命令
Artisan::call('db:seed');
$console->writeln('db:seed done.');
Artisan::call('ide:models--force');
$console->writeln('ide:models done.');
错误:
The command "ide:models--force" does not exist.
我该怎么做?
正确的命令是ide-helper:models
如果你这样做你可以确认这一点:
php artisan help ide:models
你得到:
[...]
Usage:
ide-helper:models [options] [--] [<model>...]
表示在命令行调用时Laravel确实自动解析该命令。然而,当以编程方式调用它时,这种解析机制不存在。
另一个问题是 --force
在 ide-helper:models
中不是有效选项,但您可以这样做:
Artisan::call('db:seed');
$console->writeln('db:seed done.');
// Uncomment one of the two
// Artisan::call('ide-helper:models --nowrite'); // Only write metadata in the _ide_helper_models.php file
// Artisan::call('ide-helper:models --write'); // Write metadata on models
// ------
$console->writeln('ide:models done.');
选择你喜欢的那个
在Laravel 8
中测试了以上内容