一般处理过程:

模型进行数据操作,继承自CActiveRecord (活跃记录)

AR数据库向上的封装。AR通过OOP面向对象方式操作数据库。AR须要终于转变为详细的sql语句。通过一个中间类(criteria标准)协助转为的详细sql语句。find、findAll
就是转化为这个类的一些属性

文件路径AR  : \framework\db\ar\CActiveRecord.php

能够看到非常多方法

打开findAll函数进行类库追踪到  这个\framework\db\schema\CDbCommandBuilder.php 文件

再次进行追踪到这个文件\framework\db\schema\CDbCriteria.php:

为什么这样追踪:

1

2

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYnV5aW5nZmVpODg4OA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

3

经常使用查询方法

以下是三种查询方式

    function actionCeshi(){
$model = Goods::model(); //$infos = $model -> findAllByPk(10);
//$infos = $model -> findAllByPk(array(1,5,12));
////////////////////////////////////////////////////////////////////////////////////////// //findAll($condition,$param)
//$condition 就是sql语句的where条件
//查询诺基亚手机而且价格大于500元
//$infos = $model -> findAll("goods_name like '诺%' and goods_price>500");
//为了避免sql注入的安全问题。sql语句里边最好不要直接写条件信息
//$infos = $model -> findAll("goods_name like :name and goods_price>:price",array(':name'=>'诺%',':price'=>500));
////////////////////////////////////////////////////////////////////////////////////////// //有的时候我们查询信息,
//想要查询详细的"字段" select
//想要查询详细的"条件" condition
//想要查询详细的"排序" order
//想要查询详细的"分组" group
//想要查询详细的"限制" limit
//想要查询详细的"偏移量" offset //$infos = $model -> findAll(array(
// 'select'=>'goods_name,goods_price',
// 'condition'=>"goods_name like '诺%'",
// 'order'=>'goods_price desc',
// 'limit'=>3,
// 'offset'=>6,
//)); //////////////////////////////////////////////////////////////////////////////////////////
//通过criteria实现信息的查询
$criteria = new CDbCriteria();
$criteria -> select = "goods_name,goods_price";
$criteria -> condition = "goods_name like '摩%'";
//$criteria -> limit = 6;
$criteria -> order = "goods_price";
$infos = $model -> findAll($criteria); $this ->renderPartial('show',array('goods_infos'=>$infos)); //save()方法运行update或insert
//$model -> save();
}

全部控制器都继承CController,

l 父类Controller在哪了?

这个父类我们没有显示包括进程序里边,比方include、requre之类包括指令

l 那么这个父类控制器Controller我们在什么地方给包括进来的?

答:在Yii应用的主配置文件中边main.php,间接通过引入compoments组件文件夹进来的

l 那么主配置文件main.php在什么地方引入到我们的应用里边的呢?

答:在统一入口处index.php

最新文章

  1. HQL查询——HQL查询的基本用法
  2. 十个最适合 Web 和 APP 开发的 NodeJS 框架
  3. yii2 rbac权限控制之菜单menu详细教程
  4. 微信小程序开放公测了 晚上又可以通宵搞代码了
  5. scikit-learn 机器学习工具包
  6. 读jQuery官方文档:数据方法与辅助方法
  7. Weka 自动优化参数
  8. Datatables+Bootstrap
  9. 【PHP SDK for OpenStack/Rackspace APIs】身份验证
  10. Unity3D 物体移动到指定点
  11. jacoco统计Android手工测试覆盖率并自动上报服务器
  12. 承接教育类html5交互课件/动画/游戏外包——如何快速开发一款html5交互课件/动画产品
  13. JPA整合Spring案例
  14. python的subprocess模块执行shell命令
  15. openstack的Host Aggregates和Availability Zones
  16. Kubernetes并发控制与数据一致性的实现原理
  17. php 文件上传缩略图路径分析类
  18. 按照事务类型分析 DB2 事物的性能
  19. LoadRunner中Vugen-Recording Options选项卡介绍:
  20. Guid.NewGuid().ToString()得几种格式显示

热门文章

  1. AjAX 常用参数
  2. 初识单点登录及JWT实现
  3. 什么叫openapi
  4. maven也是Apache开发的,也是java开发的。maven需要你本地系统JDK的支持
  5. Session小案例-----简单购物车的使用
  6. sizeof()函数的使用——————【Badboy】
  7. hdu Escape
  8. php 设计模式之工厂模式
  9. ORA-01261: Parameter db_recovery_file_dest destination string cannot be translat
  10. xxx while the managed IDbConnection interface was being used: Login failed for user xxx