如何创建自定义控制台命令来迁移所有迁移文件?
How to create a custom console command to migrate all migration files?
我正在创建一个控制台命令来自动安装我的项目。控制台命令需要 运行 composer install
、更新等。所有这些都涵盖了,但是部署数据库结构的 Artisan::call('migrate')
不起作用。除此之外,没有做任何事情。无操作,无错误消息。
这是控制台命令 PHP 文件:
namespace App\Console\Commands;
use Illuminate\Console\Command;
use Artisan;
class install extends Command
{
protected $signature = 'goliatt:install';
protected $description = 'Install Goliat Core Framework';
public function __construct()
{
parent::__construct();
}
public function handle()
{
// THIS WORKS
exec('composer install');
// THIS DOES NOT WORK
$exitCode = Artisan::call('migrate');
}
}
看来您可能叫错了 Artisan。命名空间应该是 Illuminate\Support\Facades\Artisan
我终于找到了解决办法。问题是我使用的是 'echo' 而不是信息。它正在通过信息改变回声。
谢谢!
我正在创建一个控制台命令来自动安装我的项目。控制台命令需要 运行 composer install
、更新等。所有这些都涵盖了,但是部署数据库结构的 Artisan::call('migrate')
不起作用。除此之外,没有做任何事情。无操作,无错误消息。
这是控制台命令 PHP 文件:
namespace App\Console\Commands;
use Illuminate\Console\Command;
use Artisan;
class install extends Command
{
protected $signature = 'goliatt:install';
protected $description = 'Install Goliat Core Framework';
public function __construct()
{
parent::__construct();
}
public function handle()
{
// THIS WORKS
exec('composer install');
// THIS DOES NOT WORK
$exitCode = Artisan::call('migrate');
}
}
看来您可能叫错了 Artisan。命名空间应该是 Illuminate\Support\Facades\Artisan
我终于找到了解决办法。问题是我使用的是 'echo' 而不是信息。它正在通过信息改变回声。
谢谢!