Laravel 自己创建 Command 命令,在里面写较多逻辑好不好?

今天使用laravel实现任务调度,发现要在自己创建Command命令里,要写好多逻辑,不知道这样是否可以,还是有更好的办法。

file

请大神赐教,谢谢

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 9

@johnlui 那就好,谢谢了,ps:还要谢谢你写的Eloquent详解,我当时理解,就看的你的博客,哈哈

6年前 评论
leo

取决于是否会有逻辑复用,比如只是一次性的数据割接就可以写到command里,如果是一个业务相关的定时任务可能就需要考虑逻辑分层和复用了

6年前 评论

@leo 恩,懂了,谢谢大神提点。

6年前 评论

请参考SOLID的S原则,一行代码,一个函数,一个类尽可能只做一个功能,这样对你维护来说都是最简单的,我习惯把Command命令作为Controller来使用,具体业务逻辑另外放置。

6年前 评论
leo

@freefcw 切莫过分教条,如果只是数据割接这种一次性代码还要做分层,一是写起来费时间,二是在别的地方(比如 Service 层)多了一份莫名其妙的代码,给后人挖坑

6年前 评论

@leo 首先要有这个意识,其次再去考虑是否要分开,我也只是说尽可能。

按照楼主这个说法,好多逻辑,都写Command自然是不合理的,如果在三五个函数里面,几十行代码能搞定的,我也懒得再写到别的地方了

6年前 评论

谢谢大神们的提点,我现在写command的目的是实现任务调度,我们的项目有个数据统计,数据表里面存的只有每天的数据信息,但在展示的时候会有月数据、年数据,所以我打算新建两个月数据和年数据的表,每月一号和每年的第一天,进行对上月和上一年的数据统计,然后再插入到数据表中,我打算把统计月数据的和统计年数据的逻辑写在一个command中,所以就出现了现在的问题,逻辑较多。

6年前 评论

@leo service层是要自己去创建的么,我没有在项目中找到这样目录,如果是自己创建的话主要存放什么呢?
谢谢你的解答:smile:

6年前 评论

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