TP框架下模型及连贯操作

今天主要讲了些TP框架中模型层的操作及概念

首先:

实例化模型层的两种方法:

一种是用M()函数,另一种是new Model() 来实例化一个对象

模型一共有三类:基础类,空模型,自定义模型

基础类:是只实例化TP框架封装好的Model类所获得的模型对象,可以操作基本的增删改查,缺点是封装好的类拓展性很差,只能做这些了

空类型:实例化Model是不加参数,会得到一个空模型,空模型可以用来操控表的一层级,例如返回有多少表,可以使用QUERY()得到

自定义模型:实际上这种方式使用最为频繁,一个项目不可避免的需要定义自身的业务逻辑实现,就需要针对每个数据表定义一个模型类。

LIB/MODELS/下自定义自己的模型类文件,自定义模型时,每一个模型对应一个数据表,模型类命名规范:

去掉表前缀的表名(首字母大写)+Model.class.php

默认情况下,模型类的名字对应表名,例如:

GoodModel.class.php 对应  goods

UserGroupModel.class.php   对应 user_group

如果类名和表名不一致,要在类中定义$tableName属性储存对应的表名:

protected $tableName 'book';

创建类是要继承model类,否则很多基本模型的方法应该无法使用:

Class GoodModel extends Model{}

自定义模型实例化方法:使用D()函数,D方法可以自动检测模型类,如果存在自定义的模型类,则实例化自定义模型类,如果不存在,则会实例化Model基类,同时对于已实例化过的模型,不会重复去实例化。

D方法还可以支持跨项目和分组调用

//实例化TP_new项目的user模型:

$user=D(‘TP_new://user’);

//实例化admin分组中的user模型:

$user=D(‘admin:/user’);

连贯操作:

连贯操作主要用于查询数据,可以将数据查询出来就可以删改查了

连贯操作使用的函数都是在model中封装好的。可以直接调用,

 假如我们现在要查询一个User表的满足状态为1的前10条记录,并希望按照用户的创建时间排序 :$User->where('status=1')->order('create_time')->limit(10)->select();

方法在手册中有,这里不详细说了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值