技术探讨>
ThinkPHP学习(四) 引入模版 定义model
3.1 模板放在哪儿?
放在模块的view目录下
并且每个控制器的模板,要在与控制器同名的目录下.
以 index.php/Home/User/reg
则对应的模板在 /Home/view/User/reg.html
3.2 叫什么?和控制器有什么对应关系?
模板名和方法名是一致的
例: 地址栏: index.php/Home/User/reg
对应控制器: Home/UserController
对应的方法: reg
对应的模板: Home/View/User/reg.html
MODEL
4.1 放在哪儿?
项目/模块/Model目录下
以本教程为例,Home模块的Model
/Home/Model/目录下
4.2 model类文件叫什么?
模型名: XxModel.class.php
4.3 model类与表名的对应关系
一般model名称与表名table 相同
如 GoodsModel.class.php 则对应操作 goods表
注意: 虽然Model类首字母大写的,但惯例,表名一律小写.
4.4 继承谁?namespace Home\Model\r\nuse \Think\Model\r\nclass XxModel extends Model {\r\n}
4.5 在controller里如何实例化
new \模块名\Model\ModelName();
例:new \Home\Model\UserModel();
4.4 继承谁?namespace Home\Model\r\nuse \Think\Model\r\nclass XxModel extends Model {\r\n}
4.5 在controller里如何实例化
new \模块名\Model\ModelName();
例:
new \Home\Model\UserModel();也可以通过快捷函数D('模型名'),例:
D('User')
注意:
上述实验,都会失败,因为还没有配置数据库信息.
区别
D(),M()函数都能得到Model的实例,
但D函数是优先得到子类的Model实例
而M函数是得到父类的Model实例,即\Think\Model类的实例
(更详细介绍请参见php完全开发手册)