首页 > 解决方案 > 命令“备份:运行”不存在。在使用控制器执行命令时

问题描述

我正在尝试使用 HTTP 请求(使用按钮)备份系统。我已经根据 laravel spatie文档配置了我的代码库。当我尝试php artisan backup:run在终端中运行该命令时,它执行得很好并提供了一个备份文件(.zip)

但是当我尝试使用它提供的控制器运行命令时,

Symfony\Component\Console\Exception\CommandNotFoundException
The command "backup:run" does not exist.

这是我的控制器,

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Artisan;

class BackupController extends Controller
{
    public function index() {
        $artisan = \Artisan::call('backup:run');
        $output = \Artisan::output();
        ...
    }
}

这是我的路线,

Route::middleware(['auth:sanctum', 'verified'])
    ->get('/backup', [BackupController::class, 'index'])
    ->name('backup');

我尝试通过添加、清除缓存来解决问题,Spatie\Backup\BackupServiceProvider::class,app.php尝试从头开始重做整个过程。但不幸的是,出现了同样的错误。

希望对解决问题有所帮助,在此先感谢。

标签: laravellaravel-8laravel-controllerlaravel-backup

解决方案


推荐阅读