我网站写到现在,貌似都没有用到过model诶,以前对MVC中M的理解也就是数据库的一些操作,但是现在我发现thinkphp中,数据库的操作也完全可以在C控制器中实现嘛,比如一般的增删改查,那么请问这里的模型还有什么作用?我看了下手册,tp中的模型类是不是说一个表一个?简化代码吗?还是???简化哪里的呢?求举个例子解释一下,谢谢了
一般情况下是一个表对应一个model类,不用也是可以的。
至于你说的简化代码,给你举个例子:
比如说你有一个user表,里面有 id name pass time(登录时间),对其的操作页面有注册,登录,修改密码等等
如果你要使用M来进行实例的话,不管是注册还是干啥,你每次都要对提交过来的信息是否合法进行一个验证,time时间每次都要使用time()函数来重新生成以下
但是如果你使用了model,使用D来实例化,这些信息的验证,和time()的完成都可以写到model中,就不用在上面说的那些页面当中一一进行操作验证或者添加了。
class UserModel extends Model这个自动完成是不是要在控制器中调用save方法才能存入数据库啊?
追答你去看手册,在你在model中定义过自动完成之后,如果你想要使用的话,实例的时候使用D函数,在对要插入或者更新的数据进行操作之前要先使用create(你的数据)->add()或者->save().
使用create会比直接使用add或者save将会更加安全