TP框架部署模式下字段不更新及M方法和D方法区别

Posted toDoYourBest

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TP框架部署模式下字段不更新及M方法和D方法区别相关的知识,希望对你有一定的参考价值。

  

如果你在部署模式下面修改了数据表的字段信息,可能需要清空 Data/_fields 目录下面的缓存文件,让系
统重新获取更新的数据表字段信息,否则会发生新增的字段无法写入数据库的问题

 

D方法,用于数据模型的实例化操作

D(‘所需模型‘)是new \当前模块\Model\所需模型的简化

当D方法找不到"\当前模块\Model\"类文件的时候,再去公共模块下找:\Common\Model\模型

再找不到,就调用M方法(即:实例化系统的\Think\Model基类)

M方法,默认情况下是直接实例化系统的\Think\Model类

如果你的模型类有自己的业务逻辑,M方法是无法支持的,就算是你已经定义了具体的模型类,M方法
实例化的时候是会直接忽略

经过以上比较,得出

1.如果只是简单的CURD,那M方法效率更高,因为他不需要加载具体的模型

2.如果需要用到模型中的业务逻辑(验证等),那M方法是无效的,只能用D方法,或者传统的new实例化模型

 

以上是关于TP框架部署模式下字段不更新及M方法和D方法区别的主要内容,如果未能解决你的问题,请参考以下文章

TP框架中的M,D,C,A,I,S方法

TP框架的业务逻辑谁能给我说说

六. 框架相关知识点

tp框架模板里的date:“Y-m-d”为何变成1970-01-01

转载tp5与3.2区别

Thinkphp框架中D()和M()的区别