我正在尝试为我的 CRM 创建备份选项。我已经安装了这个包 https://spatie.be/docs/laravel-backup/v5/take-backups/overview 并且我正在使用 laravel 6^。如果我运行 backup:run 从终端运行,我可以用这个包备份我的数据库和所有系统配置,但这不是我想要的。我正在寻找的是创建一个界面,页面管理员可以通过单击选项手动进行备份。例如这样:https://jobclass.laraclassifier.com/admin/backups(电子邮件:[email protected]密码:123456)有谁知道我该怎么做这样的事情?
通过代码调用命令
在 CLI 之外执行 Artisan 命令。例如,您可能希望从路线或控制器触发 Artisan 命令。您可以使用 Artisan 外观上的 call 方法来完成此操作。在您的控制器上您可以执行以下操作:
public function createBackup(){
Artisan::call('backup:run',['--only-db'=>true]);
/// whatever you want to display
}
是的,您可以使用另一个包为
spatie/laravel-backup
包添加界面,该包也使用此 spatie 包并提供漂亮的用户界面与之交互,该包是:https://github.com/pavel-mironchik/laravel-备份面板
使用composer,您可以通过以下命令安装它:
composer require pavel-mironchik/laravel-backup-panel
安装后,使用以下 Artisan 命令发布其资源:
php artisan laravel-backup-panel:install
然后只需转到
http://{your-project}/backup
,界面就会出现在您的项目中,您可以从resources/views/vendor/laravel_backup_panel
目录中对其进行自定义。
该软件包提供了用于创建备份的用户界面,包括完整备份、仅数据库或仅文件备份等选项,还提供了下载和删除备份以及列出所有现有备份的功能。
我很喜欢,是不是优雅?!!!