热搜:NVER node 开发 php

thinkphp3.2.3的Model目录里是存放什么文件的,是如何与控制器和视图文件相关联的?

2024-07-23 15:15:01
thinkphp3.2.3的Model目录里是存放什么文件的,是如何与控制器和视图文件相关联的?

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。