原文:Thinkphp入门 五 —模型 (49)

【数据库操作model模型】

model  模型  数据库操作

tp框架主要设计模式:MVC

C:controller   控制器   shop/Lib/Action/具体控制器

V:view       视图     shop/Tpl/分组/模板文件

M:model      数据模型  shop/Lib/Model/具体模型

【创建模型】

创建的原则:一个数据表对应一个数据模型

创建模型:

当出现以下信息,说明我们的数据库没有配置用户名和密码config.php

【数据库使用步骤】:

  1. 创建模型model文件shop/Lib/Model/GoodsModel.class.php
  2. 在config.php里边设置数据库的库名、用户名、密码、表前置信息
  3. 在控制器里边可以直接实例化GoodsModel模型对象

【数据库配置config.php】:

【从数据库获得相关信息—查询】

我们使用select()方法从数据库获得数据信息,该方法返回一个二维数组,

如果我们想要获得一条记录,就使用find()方法,该方法返回一维数组

$goods  ->  select()   //获得全部记录、全部字段结果

$goods  ->  select(15)  //获得主键等于15 的记录结果

$goods  ->  select(“10,15,20”)  //获得主键在10、15、20范围内的记录信息

$goods  ->  find(16);   //以一维数组的形式给我们返回主键等于16的记录信息

$goods  ->  getByXXX();  //根据具体XXX字段做where条件进行查询,一维数组结果返回。该方法会走Model.class.php 里边的__call()自动条件方法。

【大小写问题】:

【通过model模型获得数据具体演示】:

【实例化模型方式】

  1. 传统方式new  GoodsModel()就可以
  2. 可以同过快捷函数D()来实例化模型对象

例如: D(‘Goods’);  实例化Goods模型对象

D();   实例化基类对象,该对象在使用的时候需要指定“数据表名”

和主键名字,较复杂,不推荐直接使用

  3 通过快捷函数M()实例化基类对象

例如:M()  实例化Model.class.php对应的对象,该方法不推荐使用

  【 创建一个模型,有可能这个模型对应的表前缀与其他表前缀不一致,那么这个模型就需要定义自己的真实表名字】:

  

Thinkphp入门 五 —模型 (49)的更多相关文章

  1. Thinkphp入门 一 (45)

    原文:Thinkphp入门 一 (45) 什么是框架? 就是一堆代码的集合,这些代码可以有变量.常量.函数.类等等.这些代码彼此紧密联系,彼此有合作关系.里边还有设计模式:MVC.单例.工厂等等. 为 ...

  2. 脑残式网络编程入门(五):每天都在用的Ping命令,它到底是什么?

    本文引用了公众号纯洁的微笑作者奎哥的技术文章,感谢原作者的分享. 1.前言   老于网络编程熟手来说,在测试和部署网络通信应用(比如IM聊天.实时音视频等)时,如果发现网络连接超时,第一时间想到的就是 ...

  3. openresty 前端开发入门五之Mysql篇

    openresty 前端开发入门五之Mysql篇 这章主要演示怎么通过lua连接mysql,并根据用户输入的name从mysql获取数据,并返回给用户 操作mysql主要用到了lua-resty-my ...

  4. ThinkPHP中的模型二

    ThinkPHP中的模型 1.为什么要创建数据对象 案例:使用ThinkPHP完成部门管理 ① 设计数据库 ② 创建Dept控制器 路径:./Application/Admin/Controller创 ...

  5. ThinkPHP中的模型

    ThinkPHP中的模型 1.什么是模型(Model) 模型表示企业数据和业务规则,实际项目开发中,主要实现与数据库进行操作. 2.模型的定义规则 模型类的命名规则是除去表前缀的数据表名称,采用驼峰法 ...

  6. Thinkphp入门 四 —布局、缓存、系统变量 (48)

    原文:Thinkphp入门 四 -布局.缓存.系统变量 (48) [控制器操作方法参数设置] http://网址/index.php/控制器/操作方法 [页面跳转] [变量调节器] Smarty变量调 ...

  7. Thinkphp入门三—框架模板、变量(47)

    原文:Thinkphp入门三-框架模板.变量(47) [在控制器调用模板] display()   调用当前操作名称的模板 display(‘名字’)  调用指定名字的模板文件 控制器调用模板四种方式 ...

  8. Thinkphp入门 二 —空操作、空模块、模块分组、前置操作、后置操作、跨模块调用(46)

    原文:Thinkphp入门 二 -空操作.空模块.模块分组.前置操作.后置操作.跨模块调用(46) [空操作处理] 看下列图: 实际情况:我们的User控制器没有hello()这个方法 一个对象去访问 ...

  9. DevExpress XtraReports 入门五 创建交叉表报表

    原文:DevExpress XtraReports 入门五 创建交叉表报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪 ...

随机推荐

  1. yii框架网址解析问题

    转载请注明来自souldak,微博:@evagle 首先如果你在config/main.php里面没有配置urlManager的话,那么流程如下(摘自yii官网) 用户发出了访问 URL http:/ ...

  2. Oracle 11gR2的完全卸载

    首先停止oracle服务,卸载oracle,其次删除oracle文件夹,最后删除oracle服务和清理注册表. 以下是详细教程 1.关闭oracle所有的服务.可以在windows的服务管理器中关闭: ...

  3. BZOJ 2875: [Noi2012]随机数生成器( 矩阵快速幂 )

    矩阵快速幂...+快速乘就OK了 ----------------------------------------------------------------------------------- ...

  4. [转]CentOS 6.5安全加固及性能优化

    原文链接:http://os.51cto.com/art/201312/423095.htm Centos 6.5 优化 一些基础优化和安全设置 这个也挺好 说明:经常玩Linux系统的朋友多多少少也 ...

  5. 基于visual Studio2013解决C语言竞赛题之0614递归大元素

     题目 解决代码及点评 /************************************************************************/ /* 14. 编一个程 ...

  6. JEECG社区 一个微信教育站点案例源代码分享

    微信教育站点案例演示: http://t.cn/RvPgLcb 源代码分享: http://pan.baidu.com/s/1cUImy 截图演示: watermark/2/text/aHR0cDov ...

  7. MSSQL - 创建新用户

    1.首先使用Windows身份验证登陆. 2.然后一次打开:安全性--->登录名.右键登录名,点击新建登录名. 3.常规选项卡下:填写登录名.选择SQL Server身份验证,填写登录名密码.取 ...

  8. Ultra Office Control 2.0

    http://www.ultrashareware.com/Ultra-Office-Control.htm

  9. android studio 报错,google后无果

    你可能在环境变量中配置了adk的环境变量,同时eclipse可studio公用一个avd,在两个之间切换时过出错

  10. 基于visual Studio2013解决C语言竞赛题之1046矩阵计算

       题目 解决代码及点评 /************************************************************************/ /* 46 ...