在Laravel代码中运行'php artisan migration:fresh'

问题描述 投票:0回答:1

是否可以在没有外壳的情况下以实际的Laravel代码运行php artisan migrate:fresh?例如,在使用此功能加载表工厂之前。

Route::get('/seed', function () {
    // php artisan migrate:fresh
    factory(App\User::class)->create();
    factory(App\Models\Campaign::class, 20)->create();
    factory(App\Models\Model::class, 200)->create();
    factory(App\Models\Trim::class, 400)->create();
    factory(App\Models\Color::class, 800)->create();
    factory(App\Models\Specification::class, 800)->create();
    factory(App\Models\Option::class, 800)->create();
    factory(App\Models\LeaseLength::class, 800)->create();
    factory(App\Models\Mileage::class, 800)->create();
    factory(App\Models\ExtraOption::class, 800)->create();

    return redirect()->back();
});

此目标是在再次播种之前先清理表。

php mysql laravel artisan
1个回答
1
投票

您可以像这样从控制器运行artisan命令

use Artisan;

public function artisan()
   {
       Artisan::call('migrate:fresh');
       Artisan::call('make:seeder UsersTableSeeder');
       Artisan::call('config:clear');
   }
© www.soinside.com 2019 - 2024. All rights reserved.