ThinkPHP框架调用page类分页无法关联表的情况
已封装的方法,可以直接修改参数拿来用
/** * 通用列表 * @param $model object M() or D() 的 object * @param $where array 搜索条件 * @param int $pageShow number 每页显示数量 * @param string $orderBy string 排序条件 * @param string $field string 显示字段 * @param string $groupBy string 分组字段 */ public function generalGetList($model,$where=1,$pageShow = 1,$orderBy = '',$field = '',$groupBy=''){ $pageDisplay = array(); /**********重新设置条件防止无法联表查询的问题*********/ $OPT=new \ReflectionProperty($model,'options'); $OPT->setAccessible(true); $options['where']=$where; $options = array_merge( (array)$OPT->getValue($model), $options ); /************************************************-*/ if($pageShow > 0) { import('ORG.Util.Page');// 导入分页类 $count = $model->where($where)->count(); $page = new Page($count,$pageShow); $page->show(); $model->limit($page->firstRow.','.$page->listRows); $pageDisplay['total'] = $count; $pageDisplay['limit'] = $page->listRows; $options['limit'] = $page->firstRow.','.$page->listRows; } if($orderBy){ $options['order'] = $orderBy; } if($groupBy){ $options['group'] = $groupBy; } $model->setProperty('options',$options);//重新设置条件防止无法联表查询的问题 if($field){ $model->field($field); } $list = $model->where($where)->order($orderBy)->select(); dump($list); $this->assign('pageDisplay',$pageDisplay); $this->assign('list',$list); }