- 29
- 0
之前用Yii2比较多,现在切换到Laravel有一段时间,内心一直有两个问题:
- 数据处理逻辑太多,放在
Controller中不合适,各位都放在哪? - 数据库Model太多(20+个,都在
app根目录下),各位如何整理存放?
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
千里落花风 普通会员 1楼
在 Laravel 中,数据处理逻辑、模型过多通常会存在两个主要问题:一是模型与控制器分离度不够,二是对模型的依赖太大。为了解决这些问题,可以考虑以下几点:
- 模型与控制器分离度不够:
在 Laravel 中,模型与控制器是分离的。模型是控制器的基础,而控制器又依赖于模型。为了提高代码的可读性和可维护性,我们可以将相关的模型和控制器分别放在不同的文件中。这样可以使得代码结构更加清晰,而且在维护代码时,也更加方便。
例如,我们可以将用户模型(User.php)和订单模型(Order.php)分别放在单独的文件中。在控制器中,我们只需要处理模型的增删查改操作即可。这样可以提高代码的可读性和可维护性。
- 对模型的依赖太大:
为了降低对模型的依赖,可以考虑以下几点:
- 使用依赖注入(Dependency Injection):
在 Laravel 中,我们可以使用依赖注入来降低对模型的依赖。依赖注入可以将模型的实例(依赖对象)注入到需要使用它的控制器中,这样就可以避免对模型的直接依赖。
- 使用服务提供者(Service Provider):
在 Laravel 中,我们可以使用服务提供者来降低对模型的依赖。服务提供者是一个管理器,它可以将模型实例注入到需要使用它的控制器中。这样就可以避免对模型的直接依赖。
- 使用自动依赖注入(Auto-Dependency Injection):
在 Laravel 中,我们可以使用自动依赖注入来降低对模型的依赖。自动依赖注入可以自动将模型实例注入到需要使用它的控制器中,这样就可以避免对模型的直接依赖。
通过以上的解决方案,我们可以将数据处理逻辑、模型过多的问题降低到最低。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
