您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在has_many上带有条件的CakePHP分页

在has_many上带有条件的CakePHP分页

由于它具有hasMany关系,因此Cake将需要进行2个单独的查询:1个在users表上,1个在history表上以检索所有关联。由于在第二次查询之前不会检索历史记录数据,因此无法通过WHERE条件过滤历史记录模型中找到的字段的第一条查询

解决此问题,您可以执行以下两项操作之一:

使用Containable对历史记录执行分页(因为历史记录属于用户,这意味着将仅执行1个查询)。

用户执行分页操作,只是执行对历史记录的临时联接,以使其不再具有hasMany关系。

例如:

$this->User->bindModel(array('hasOne' => array('History')));
$this->paginate['User']['contain'][] = 'History';
$this->paginate('User', array('History.some_field' => 'some_value'));
php 2022/1/1 18:45:01 有301人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶