【php】Laravel - 数据处理逻辑、Model过多,各位把它们放哪儿?

之前用Yii2比较多,现在切换到Laravel有一段时间,内心一直有两个问题:

  1. 数据处理逻辑太多,放在 Controller 中不合适,各位都放在哪?
  2. 数据库Model太多(20+个,都在 app 根目录下),各位如何整理存放?

回答

推荐使用RPS 模式
推荐文章:laravel/laravel-architecture/" rel="nofollow noreferrer">http://oomusou.io/laravel/lar...

  1. Model 本身即代表数据表,所以你有几张表一般就对应几个 Model,这个多有什么关系呢?
  2. Model 层最好就是纯粹的 Laravel 的 Eloquent Model,里面不要有业务逻辑。
  3. 增加 Repository 层,将 Model 的业务逻辑封装在这里。
  4. 增加 Service 层,将 Controller 的业务逻辑封装在这里。
  5. Controller 层只负责数据获取、校验,调用相应 Service 的方法,返回数据。
  1. 可以在Http同级目录增加一个Logic层来存逻辑代码。controller只负责 接收请求,返回数据。model只负责操作与数据库有关的操作。

2.可以在Http同级目录新建一个Model目录,如果模型还是感觉很多的话,继续再model下建立对应的目录,只是注意文件的命名空间要修改正确

【php】Laravel - 数据处理逻辑、Model过多,各位把它们放哪儿?

由于有图片需要传,我修改一下答案。

不会产生重复的情况啊?可能您说的意思我没理解透彻。我现在把我之前的一个目录结构发一下。您看一下有没有什么疑问

【php】Laravel - 数据处理逻辑、Model过多,各位把它们放哪儿?

以上是 【php】Laravel - 数据处理逻辑、Model过多,各位把它们放哪儿? 的全部内容, 来源链接: utcz.com/a/101618.html

回到顶部