ligl/laravel-totem-mod

Laravel 包,通过美观的仪表板管理您的 cron 任务(具有分类和 ping URL 的分叉版本)

v3.2.21 2018-10-10 11:09 UTC

README

Laravel Totem

Build Status StyleCI License

简介

Join the chat at https://gitter.im/laravel-totem/Lobby

从美观的仪表板管理您的 Laravel Schedule。按照您的喜好安排 Laravel Console Commands。无需返回代码即可动态启用/禁用计划任务。

文档

兼容性矩阵

安装

Totem 需要 Laravel v5.4 及以上版本,请参考上述表格以获取兼容性信息。使用 composer 将 totem 安装到您的 Laravel 项目中

composer require ligl/laravel-totem-mod

Laravel Totem 支持 Laravel v5.5+ 的自动包发现,因此 Laravel v5.5+ 中不需要注册服务提供者

TotemServiceProvider 添加到 Laravel v5.4 应用程序的配置文件 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 资产

php artisan totem:assets

配置

cron 任务

此包假设您对 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

屏幕截图

任务列表

Task List

任务详情

Task List

编辑任务

Task List

用于查看计划任务的 artisan 命令

Task List

更新日志

以下列出重要版本。有关项目的完整历史记录,请参阅更新日志

鸣谢

可以通过遵循我们的贡献指南提交错误报告、功能请求和 pull 请求。

贡献与协议

许可证

本软件基于MIT许可证发布。

© 2017 Roshan Gautam,版权所有。