sioposit / cl-scheduler
一个用于通过美丽仪表板管理cron任务的Laravel包
Requires
- php: >=7.1
- illuminate/bus: ~5.6.0
- illuminate/console: ~5.6.0
- illuminate/contracts: ~5.6.0
- illuminate/database: ~5.6.0
- illuminate/events: ~5.6.0
- illuminate/notifications: ~5.6.0
- laravelcollective/html: ~5.6
Requires (Dev)
- mockery/mockery: ^1.0
- orchestra/database: ^3.0
- orchestra/testbench: ^3.6
- phpunit/phpunit: >=7.0
This package is auto-updated.
Last update: 2024-09-28 23:45:41 UTC
README
简介
通过一个漂亮的仪表板管理您的Laravel Schedule。根据您的喜好安排您的Laravel Console Commands。无需返回代码即可动态启用/禁用计划任务。
文档
兼容性矩阵
安装
Totem需要Laravel v5.4及以上版本,请参考上表以了解兼容性。使用composer安装totem到您的Laravel项目中
composer require studio/laravel-totem
Laravel Totem支持Laravel v5.5+的自动包发现,因此Laravel v5.5+中无需服务提供商注册
将TotemServiceProvider添加到您的Laravel v5.4应用程序的config/app.php的providers数组中
Studio\Totem\Providers\TotemServiceProvider::class,
一旦安装并注册了Laravel Totem,
- 运行迁移
php artisan migrate
- 使用以下命令将
Totem资源发布到您的公共文件夹
php artisan totem:assets
表前缀
totem的表使用通用的名称,可能与项目中的现有表冲突。为了减轻这种情况,可以通过设置.env参数TOTEM_TABLE_PREFIX来为所有totem表及其模型应用前缀。
更新
请更新totem后重新发布totem资源
php artisan totem:assets
配置
定时任务
此包假设您对Laravel的任务调度和Laravel控制台命令有很好的理解。在所有这些工作之前,请确保您有一个如下所示的cron运行
* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
Web仪表板
Laravel Totem的仪表板灵感来自Laravel Horizon。就像Horizon一样,您可以配置Totem仪表板的身份验证。将以下内容添加到您的AppServiceProvider的boot方法中或您认为合适的地方。
use Studio\Totem\Totem; Totem::auth(function($request) { // return true / false . For e.g. return Auth::check(); });
默认情况下,Totem的仪表板仅在本地环境中工作。要查看仪表板,请将浏览器指向您的应用程序的/totem。例如,laravel.dev/totem。
命令过滤下拉菜单
默认情况下,Totem在创建/编辑任务时输出所有Artisan命令。为了使此下拉菜单更简洁,可以在totem.php配置文件中设置过滤配置功能。
示例过滤器
'artisan' => [ 'command_filter' => [ 'stats:*', 'email:daily-reports' ], ],
此功能使用fnmatch语法来过滤显示的命令。stats:*将匹配所有以stats:开头的Artisan命令,而email:daily-reports将仅匹配名为email:daily-reports的命令。
此过滤器可以作为白名单或黑名单使用。默认情况下,它作为白名单,但可以设置选项标志以将其作为黑名单。
'artisan' => [ 'command_filter' => [ 'stats:*', 'email:daily-reports' ], 'whitelist' => true, ],
如果白名单的值为false,则过滤器作为黑名单。
'whitelist' => false
中间件
Laravel Totem使用默认的web和api中间件,但如果需要自定义,可以通过设置适当的.env值来更改中间件。这些值可以在config/totem.php中找到。
使命令在Laravel Totem中可用
所有Artisan命令都可以安排。如果您想从Totem中隐藏一个命令,请确保在您的命令中设置了hidden属性为true。例如。
protected $hidden = true;
从L5.5开始,所有命令都是自动注册的,所以这不会是问题。
命令参数
如果您的命令需要参数或选项,请使用可选的命令参数字段。您可以通过以下方式将参数作为字符串提供给命令:
name=john.doe --greetings='Welcome to the new world'
在上面的示例中,name 是参数,而 greetings 是选项。
控制台命令
除了仪表板之外,Totem 还提供了一个 artisan 命令来查看计划任务列表。
php artisan schedule:list
屏幕截图
任务列表
任务详情
编辑任务
用于查看计划任务的 artisan 命令
变更日志
以下列出了重要版本。有关项目的完整历史,请参阅变更日志。
致谢
可以通过遵循我们的贡献指南提交错误报告、功能请求和拉取请求。
贡献与协议
许可证
本软件在MIT许可证下发布。
© 2017 Roshan Gautam,版权所有。




