Tp框架之模型层
数据模型层是专门针对数据库来操作的
我们在home模块用一下数据模型层
先把配置修改好
我们先来打开这个文件
然后再打开think里面的主配置,把那里面关于数据库的部分,复制到home下的配置文件,然后进行修改
复制后再粘贴
拿过来之后就可以对这些数据进行修改了
数据库和密码都是输入自己的
然后在think里面的配置文件里还有特别重要的一项
把它复制下来
粘贴到这里
把那个true改成false
在操作数据库的时候尽量把字段缓存关掉
如果启用的话,它就会有缓存,当我们对数据库进行操作,比如删除、或增加的话,数据可能不会改变的那么快
我们把这些配置做好后,就可以对数据库操作了
先来做一个模型层
在这里新建一个文件
名字也要根据约定来
里面先简单的写上内容
然后在Main配置文件里
输出一下
运行一下,找ceshi页面
输出了很多条数据
除了new方法还有其他的方法
D方法也可以
运行后
结果是一样的
也是去实例化一个模型对像
除了这两种方式,还有一种快捷方法,也是tp框架带的一种方法,M方法
运行后
上面的地方有点不一样,直接造的是父类对象
M方法造的是你父类对象,上面两种造的是子类对象,在对数据访问的时候,这三种方式都可以,访问的结果都是一模一样的
再来看怎么从数据表中操作数据
还是在Main控制器里写
然后刷新页面运行一下,看看有没有把数据都输出来
返回的是二维数组,而且是关联数组
在写数据库的时候,在创建表的时候尽量是小写
再来看第二个方法
给了它一个值,让它根据p001来找
刷新页面运行一下,看看能不能找到
返回了一个一维数组,这个一维数组包含了一条数组
find方法就是根据主键值来查找一条数据
再来试试用select方法能不能根据主键值来查找数据
刷新页面,运行一下
可以查到,但查到的还是二维数组
select方法里面不仅可以写一个参数,也就是说它可以查多条数据
刷新页面,运行一下
find只能查一条
select能查多条
再来说一下连贯操作
还是以info数据为例
这样返回的是对象,需要给它加个条件才能转为数据
后面加上select方法
刷新页面运行一下
p001找到了
所以说这个where就是条件查询
在里面随便写条件,用or隔开,多个条件是可以的
我们可以在配置文件里,加上一句话
然后刷新页面,就可以把那个小图标调出来了
可以点开查看一下Sql语句
这是我们说的第一个连贯操作,where语句
第二个连贯操作是table方法
---恢复内容结束---
数据模型层是专门针对数据库来操作的
我们在home模块用一下数据模型层
先把配置修改好
我们先来打开这个文件
然后再打开think里面的主配置,把那里面关于数据库的部分,复制到home下的配置文件,然后进行修改
复制后再粘贴
拿过来之后就可以对这些数据进行修改了
数据库和密码都是输入自己的
然后在think里面的配置文件里还有特别重要的一项
把它复制下来
粘贴到这里
把那个true改成false
在操作数据库的时候尽量把字段缓存关掉
如果启用的话,它就会有缓存,当我们对数据库进行操作,比如删除、或增加的话,数据可能不会改变的那么快
我们把这些配置做好后,就可以对数据库操作了
先来做一个模型层
在这里新建一个文件
名字也要根据约定来
里面先简单的写上内容
然后在Main配置文件里
输出一下
运行一下,找ceshi页面
输出了很多条数据
除了new方法还有其他的方法
D方法也可以
运行后
结果是一样的
也是去实例化一个模型对像
除了这两种方式,还有一种快捷方法,也是tp框架带的一种方法,M方法
运行后
上面的地方有点不一样,直接造的是父类对象
M方法造的是你父类对象,上面两种造的是子类对象,在对数据访问的时候,这三种方式都可以,访问的结果都是一模一样的
再来看怎么从数据表中操作数据
还是在Main控制器里写
然后刷新页面运行一下,看看有没有把数据都输出来
返回的是二维数组,而且是关联数组
在写数据库的时候,在创建表的时候尽量是小写
再来看第二个方法
给了它一个值,让它根据p001来找
刷新页面运行一下,看看能不能找到
返回了一个一维数组,这个一维数组包含了一条数组
find方法就是根据主键值来查找一条数据
再来试试用select方法能不能根据主键值来查找数据
刷新页面,运行一下
可以查到,但查到的还是二维数组
select方法里面不仅可以写一个参数,也就是说它可以查多条数据
刷新页面,运行一下
find只能查一条
select能查多条
再来说一下连贯操作
还是以info数据为例
这样返回的是对象,需要给它加个条件才能转为数据
后面加上select方法
刷新页面运行一下
p001找到了
所以说这个where就是条件查询
在里面随便写条件,用or隔开,多个条件是可以的
我们可以在配置文件里,加上一句话
然后刷新页面,就可以把那个小图标调出来了
可以点开查看一下Sql语句
这是我们说的第一个连贯操作,where语句
第二个连贯操作是table方法
之前写了一遍数据都没了,这次就不一一演示了,太费时间了
最后那个去重field是哪一列的意思如果不写这个的话,它会对所有数据进行去重操作