Bad*_*sie 2 cakephp cakephp-3.0
CakePHP中有没有办法为表设置默认条件?
例如,我的表有一个deleted布尔值为0或1 的表.我想默认情况下限制应用程序只选择其中的行deleted = 0.
实现表的beforeFind()回调并在那里添加条件.
http://book.cakephp.org/3.0/en/orm/table-objects.html#beforefind
Cake\ORM\Table :: beforeFind(Event $ event,Query $ query,ArrayObject $ options,boolean $ primary)
在每个查找操作之前触发Model.beforeFind事件.通过停止事件并提供返回值,您可以完全绕过查找操作.对查询的其余部分保留对$ query实例所做的任何更改.$ primary参数指示这是否是根查询或关联查询.参与查询的所有关联都将触发Model.beforeFind事件.对于使用连接的关联,将提供虚拟查询.在事件侦听器中,您可以设置其他字段,条件,联接或结果格式化程序.这些选项/功能将复制到根查询中.
您可以使用此回调来根据用户的角色限制查找操作,或者根据当前负载做出缓存决策.
| 归档时间: |
|
| 查看次数: |
632 次 |
| 最近记录: |