数据模型层是专门针对数据库来操作的

我们在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是哪一列的意思如果不写这个的话,它会对所有数据进行去重操作

Tp框架之模型层的更多相关文章

  1. TP框架---Model模型层---做模型对象

    TP框架----Model模型层---------------做模型对象 Model模型层是用来做什么的呢???? 主要是用来做操作数据库访问的. 也就说明TP框架自带了一种访问数据库的方式,使用的是 ...

  2. tp框架-----Model模型层

    1.Model模型层是用来做什么的呢? 主要是用来做操作数据库访问的.也就说明TP框架自带了一种访问数据库的方式,使用的是Model模型. 2.Model模型怎样使用呢? 要使用Model模型层访问数 ...

  3. TP框架---thinkphp模型

    1.获取系统常量信息的方法:在控制器DengLuController里面下写入下面的方法,然后调用该方法. public function test() { //echo "这是测试的&qu ...

  4. tp框架---View视图层---模板继承(举例说明)

    当我们做动态页面时,我们会发现一个网站的头部和尾部是相同的,那么我们如何用tp框架来做模板呢 ? 先看一下注意事项: (1)每个区块由<block></block>标签组成 ( ...

  5. TP框架 基础1

    php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...

  6. TP框架---thinkphp基础知识

    php框架    发瑞 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困 ...

  7. TP框架基础(三)

    [系统常量信息] 获取系统常量信息: 如果加参数true,会分组显示: >系统常量信息里经常用到的是user里的路径 > APP_PATH =>string'./shop/' 项目路 ...

  8. Django基础模型层(77-78)

    jango框架之模型层(d77-78)一 单表操作: 1 mysql数据库:settings里配置  'default': {   # key值必须都是大写   'ENGINE': 'django.d ...

  9. tp框架数据查询,增删改

    select()是数据模型的一个指定方法,可以获得数据表的数据信息 返回一个二维数组信息,当前数据表的全部数据信息 $obj = D();  创建对象 $obj -> select();  查询 ...

随机推荐

  1. 关于aop:pointcut的expression配制说明及JoinPoint

    http://blog.csdn.net/wubai250/article/details/8102194 网上其它示例1:<aop:pointcut id="serviceMetho ...

  2. Java学习之旅基础知识篇:数组及引用类型内存分配

    在上一篇中,我们已经了解了数组,它是一种引用类型,本篇将详细介绍数组的内存分配等知识点.数组用来存储同一种数据类型的数据,一旦初始化完成,即所占的空间就已固定下来,即使某个元素被清空,但其所在空间仍然 ...

  3. Docker,容器,虚拟机和红烧肉

    Docker火了,有多火你自己看看下面的统计数据就知道了 在发布4个月的时间里,下载量就超过50000次,github上收到超过4000个star,涌现了超过100个贡献者,并且有超过150个项目和超 ...

  4. .NET操作RabbitMQ组件EasyNetQ使用中文简版文档。

    本文出自EasyNetQ官方文档,内容为自己理解加翻译.文档地址:https://github.com/EasyNetQ/EasyNetQ/wiki/Quick-Start EasyNetQ简介 Ea ...

  5. 算法笔记_017:递归执行顺序的探讨(Java)

    目录 1 问题描述 2 解决方案 2.1 问题化简 2.2 定位输出测试 2.3 回顾总结 1 问题描述 最近两天在思考如何使用蛮力法解决旅行商问题(此问题,说白了就是如何求解n个不同字母的所有不同排 ...

  6. 服务器部署项目出现问题:Unsupported major.minor version 52.0

    问题描述: 编写一个web 前置服务,使用ant编译项目,将项目部署到服务器上,启动时报此错误:Unsupported major.minor version 52.0 网上给出错误原因是服务器安装的 ...

  7. 笑谈ArcToolbox (3) ArcToolbox的一亩三分地

    笑谈ArcToolbox (3) ArcToolbox的一亩三分地 by 李远祥 每个人都会有一些鲜为人知的小秘密,都有着不允许别人染指的一亩三分地.软件是人编写的,当然也会给它留有自己所拥有的一亩三 ...

  8. 5. UITest测试总结

    1. 什么是Mock 当我们在做单元测试的过程中,为了保持测试又短又快和测试的隔离性,希望尽可能少地去实例化一些具体的组件.在现在面向对象的系统中,被测试的对象很可能会依赖于几个其他的对象,这时候我们 ...

  9. python3 - 通过BeautifulSoup 4抓取百度百科人物相关链接

    导入需要的模块 需要安装BeautifulSoup from urllib.request import urlopen, HTTPError, URLError from bs4 import Be ...

  10. html5_canvas初学

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...