thinkphp3.2.3的Model目录里是存放什么文件的,是如何与控制器和视图文件相关联的?
程序员文章站
2022-05-26 14:09:25
...
View是视图文件夹我知道,model书上说是模型文件夹,存放封装数据库的相关逻辑.可是基本的数据库逻辑在控制器里也可以定义啊,这里的模型文件夹有什么作用,以及如何与视图、控制器文件相关联?
新人一枚求赐教!
附上我的目录结构
新人一枚求赐教!
附上我的目录结构
回复讨论(解决方案)
理论上你应该将操作数据库的逻辑代码放在model 中,每个model对应一张数据表,可以更灵活的配置,多处调用
流程就是 进入控制器,调用model 里的方法操作数据,业务流程判断,显示视图
业务逻辑。建议先看看MVC框架。
直接在控制器的方法里使用M方法可以构造出基本的数据表模型,完成单表的增删改查。
如果你想进行连接查询,或者说同时操作多个表的增删改查,你需要在控制器里使用D方法来构造出更加丰富的模型,这时你需要在Model文件夹里定义一些自定义的模型,完成如:自动验证,自动完成,视图模型,关联模型等更加丰富的操作。比如你可以定义一个视图模型OrderViewModel.class.php放在Model文件夹里,写上稍许代码,在控制器里D('OrderView')构造出试图模型进行连接查询,可以看看官方手册是怎么介绍的:document.thinkphp.cn
首先,你要先理解MVC模式。M即模型,它主要来承担数据层的逻辑处理,你所说的在C层也可以进行数据的CURD,当然也是可以的。MVC只是给你提供个更好的开发模式,让数据处理,业务处理和视图分隔开,当然在开发时你即使不按照严格的MVC模式来也是可以的。
如果定义了一个model,那么你在controller中可以D 方法来实例化 ,进行数据的CURD。
上一篇: 为什么单例模式是邪恶的(译)
下一篇: 相信自己学UI的选择