如何把commands[]的注册动态的放到schedule当中?或者说如何把kernel的相关内容放到数据库实现可配置化?

1. 运行环境 lnmp

1). 当前使用的 Laravel 版本? laravel 6.0

2). 当前使用的 php/php-fpm 版本?7.2

PHP 版本:7.2

php-fpm 版本:7.2

3). 当前系统 debian

4). 业务环境 开发环境

5). 相关软件版本

2. 问题描述?

protected $commands = [
// Commands\aXXXXX::class,
];

protected function schedule(Schedule $schedule)
{
$this->commands[] = Commands\XXXXXX::class

为什么这么放进去 执行artisan 提示命令不存在?

3. 您期望得到的结果?

如何实现不在commands中注册命令,而是在schedule当中注册
//: <> (能截图就截图。)

4. 您实际得到的结果?

Command “ORDER_START” is not defined.

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 4
陈先生
2年前 评论

schedule也是命令里运行的,在里面注册就只能在注册后的schedule里call,其他地方不能

2年前 评论

创建一个服务提供者,

  • 在 boot 里面去注册
  • 或者在 register 里面 listen \Illuminate\Console\Events\ArtisanStarting 这个事件里面注册
  • 或者在 register 里面使用这个方法去注册 \Illuminate\Console\Application::starting

扩展包开发 | 综合话题 |《Laravel 6 中文文档 6.x》| Laravel China 社区

2年前 评论
jcc123

看下这个的实现方式 github.com/codestudiohq/laravel-to...

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!