使用beforeFind(),如果希望find使用它,则应返回已修改的$queryData数组.这是你目前的问题.

public function beforeFind($queryData) {

parent::beforeFind();

$queryData['conditions'] = array('client_id' => 2);

return $queryData;

}

但是,您还有其他一些小问题可能会导致您遇到问题.

>您不应该在beforeFind()中直接设置条件,而是添加条件.如果你打电话给有条件的发现怎么办?考虑一下:

$this->MyModel->find('first', array(

'conditions' => array(

'MyModel.active' => 1

)

));

您希望find使用该条件,但也希望您的beforeFind()使用您的beforeFind()自动仅返回client_id = 2的结果.不幸的是,在你的beforeFind()中有这一行:

$queryData['conditions'] = array('client_id' => 2);

您刚刚完全覆盖了条件数组,并且丢失了MyModel.active = 1的其他条件.

>您还应确保说明条件中的字段属于哪个模型.这是一个很好的做法,如果你有两个模型有一个名为client_id的字段,那么将来会证明你的代码.您可以使用$this->别名来获取当前模型的别名,如果您为模型使用了不同的别名,这也将允许您的代码工作.

所以你的最终代码应该是:

public function beforeFind($queryData) {

parent::beforeFind();

$queryData['conditions'][$this->alias . '.client_id'] = 2;

return $queryData;

}

php -find(),php – beforeFind()添加条件相关推荐

  1. 基于layui的动态添加条件查询ui插件

    layuiExtend 项目介绍 最近做一个档案系统,发现字段超多,查询页面布局不是很好弄,于是就想着干脆写一个动态添加条件的ui插件. 因为是用的layui框架写的系统,所以就直接基于layui编写 ...

  2. Mysql SQL语句执行更新或者插入添加条件判断

    Mysql SQL语句执行更新或者插入添加条件判断 – 更新操作 – INSERT INTO materials (ID,Name,Remaining,Total) VALUES (1,'SolidW ...

  3. JPA - @Where注解 - 添加条件查询

    目录 前言 具体实现 前言 这里介绍@Where注解给Entity统一添加条件查询. 具体实现 Product.java @Entity @Getter @Setter @Where(clause = ...

  4. 查询添加条件_035 JAVA-MySQL 约束、DML操作(增改删)、事务处理、查询数据

    MySQL 中的约束 约束类型 : • 非空约束(not null) • 唯一性约束(unique) • 主键约束(primary key) PK • 外键约束(foreign key) FK • 检 ...

  5. 查询添加条件_从文件夹中提取符合条件的记录,只需一键

    小伙伴们好啊,今天老祝要和大家分享一个实用的数据查询技巧.要根据指定的关键字,从文件夹中动态提取出全部记录. 先来看数据源,在快递寄送信息表的文件夹中,存放了多个结构一致的工作簿: 打开一个工作簿看看 ...

  6. 根据某个字段判断是否添加条件

    描述:当字段Column1不为空时,增加条件condition select *from tablewhere (OtherCondition)and (Column1 is NULL or (Col ...

  7. nc 自定义参照 以及如何在编辑后事件中添加条件

    1.首先需要在数据库中注册一条数据 数据库注册 参照类编辑完后,需要到数据库bd_refinfo表中注册参照类信息.数据库注册SQL语句如下: INSERT INTO bd_refinfo (code ...

  8. mysql inner join where_详解mysql 使用left join添加where条件的问题分析

    当前需求: 有group和factor两张表,一个group对应多个factor,现在想查询有效的group和对应的有效的factor,两个表都有isDel逻辑删除标志. 最开始的错误写法一: SEL ...

  9. python 循环内部添加多个条件判断会出现越界

    1.循环遍历数组是,想添加条件修改时,只删除第一个 # -*- coding: utf-8 -*- a=[11,22,33,44,55]for i in a:if i == 11 or i ==22: ...

最新文章

  1. Three levels at which any machine carrying out an Information-Processing task must be understood
  2. Python Excel 操作 | xlrd+xlwt 模块笔记
  3. Mysql索引底层实现
  4. 5分钟了解 Python 中的super函数是如何实现继承的
  5. java:LocalDate计算两个日期之间的天数
  6. Getting Installation aborted (Status 7) ApplyParsePerms: lsetfilecon of /syst...【转】
  7. java ready()_Java.io.BufferedReader.ready()方法实例
  8. 诗和远方:无题(五十一)
  9. Benchmark简介
  10. 【项目知识点】Vue中实现扫描二维码获取信息
  11. 微信小程序——定位(根据经纬度算距离)
  12. Chrome 80 Cookie跨域 Samesite Lax 的错误
  13. 计算机基础——4.1 数字通信入门
  14. Android开发中自定义表情并发送出去之经典的发送表情
  15. IIS站点出现503错误。
  16. 可靠性设计原则1000条
  17. AD生成BOM表_材料清单 (Bill of Material)
  18. 一只小蜜蜂... (JAVA)
  19. POE网络变压器:谈谈网络变压器POE最新标准POE bt及需要关注的三个点
  20. [C] 将小时转化为时分秒

热门文章

  1. Pycharm去掉项目所有 # 注释
  2. Parentheses Balance (括号平衡)---栈
  3. 数据结构——算法之(010)( 字符串的左旋转操作)
  4. 在NewLisp中实现匿名函数的递归
  5. 33.搜索插件——autocomplete
  6. 构建RESTful风格的WCF服务
  7. Android和iOS那个好?
  8. 两个程序员的泰国普吉岛之行
  9. 从今天开始,自己做SEO。
  10. [工具推荐]用了TrueCrypt 再无难掩之隐