用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: shuiping56
收起左侧

[模型] 理解模型的困惑

  [复制链接]
发表于 2012-5-28 18:47:32 | 显示全部楼层
model层也可以放一些TDDL的东西
发表于 2012-7-2 00:02:24 | 显示全部楼层
hex大神的观点不错,不只是放置数据库操作,返回想要的数据才是真谛。
发表于 2013-7-10 16:26:38 | 显示全部楼层
Hex 发表于 2011-11-7 12:25
model 是不是只放数据库操作,这个要看如何设计。
我不认为 CI 的 Model 只能放数据库操作,业务逻辑完全可 ...

数据库操作和业务逻辑都放在Model中的话,Model的代码会不会越来越重?

我之前用过别的平台的MVC框架,我一般的设计就是MVC充当了UI层,而业务逻辑层及数据访问层则放在别的类库中,所以Model是通常只有数据,没有处理的,我不知道CI应该如何组织业务逻辑代码比较好,放在Modules中么?

发表于 2013-7-11 09:54:18 | 显示全部楼层
guogangj 发表于 2013-7-10 16:26
数据库操作和业务逻辑都放在Model中的话,Model的代码会不会越来越重?

我之前用过别的平台的MVC框架, ...

PHP 我觉得从系统整体架构来说,最适合充当前端展现层,而真正的业务逻辑一般不用 PHP 写。

发表于 2013-8-26 11:45:46 | 显示全部楼层
嗯,我也遇到同样的问题。安装CI的架构设计的初衷是想把Model弱化,
所有的业务逻辑交给Controller来完成。但是这样会有一个不好的地方:controller
层的代码越来越多,同时对于公共业务方法的调用就很不方便了。
虽然,后面我们打算将一些公共的业务逻辑写入到自定义库文件中,但是这样就有点
违背了MVC的整个设计形式。请教大师们有啥好的建议和想法。
发表于 2013-9-7 19:12:07 | 显示全部楼层
Hex 发表于 2013-7-11 09:54
PHP 我觉得从系统整体架构来说,最适合充当前端展现层,而真正的业务逻辑一般不用 PHP 写。

...

M层用其他语言,而C跟V用PHP?
发表于 2013-9-18 11:48:16 | 显示全部楼层
想象成盒子就行,MVC只是关注能做什么,不用关心怎么做到的
发表于 2013-10-4 16:56:46 | 显示全部楼层
{:soso_e113:}我总之是在model层只管数据的操作,c控制层用来操作model和v视图层
发表于 2013-10-16 17:47:57 | 显示全部楼层
frankth 发表于 2013-8-26 11:45
嗯,我也遇到同样的问题。安装CI的架构设计的初衷是想把Model弱化,
所有的业务逻辑交给Controller来完成。 ...

创建business层的思路挺好的, 业务变复杂后C层可能很凌乱,写在M层未尝不可, 但不建议。
M层大多和数据库打交道, 保持M的清爽可以更方便的知道做了哪些操作, 索引优化等。而且M层大多会自动连数据库吧。

关键是怎么更方便重用和维护,MVC也只是一种实现方式, 不要让思路被它固话了。

本版积分规则