【ThinkPHP】8.0 完全开发手册 / 实体模型

实体模型

实体模型对象是ThinkORM4.0+的一个新特性,采用了实体模型后,相当于给模型层做了一个分层设计,把越来越臃肿的模型进行拆分,原来的Model层则变成了仓储(Repository)模型,负责数据的查询、关联和事件,及持久化,相对来说侧重于底层操作,而实体模型则承担了数据定义、展示、处理及业务逻辑定义的角色,当然,在较大的项目中,可以单独把业务逻辑拆分为一个逻辑层或服务层,在项目中应尽可能的遵循这个原则进行分工设计。

如果需要使用4.0版本,可以使用下面的命令安装:

composer require topthink/think-orm:4.0

实体对象的主要优势有:

众所周知Model是建立在Db之上的,而实体模型Entity是建立在Model之上,同属于模型层但分工不同,并且Entity类无需做任何的参数设置,模型的定义(包括参数设置、事件定义、获取器和修改器定义、查询范围定义)仍然还是在Model。

简而言之,一旦定义了Entity模型,Entity模型就作为数据模型并同时作为逻辑层,Model模型则作为仓储模型提供底层支持和数据持久化。你可以和操作Model一样操作实体模型(包括CURD),内部会自动调用Model类。

目录