Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CakePHP分页器未分页_Php_Cakephp_Pagination - Fatal编程技术网

CakePHP分页器未分页

CakePHP分页器未分页,php,cakephp,pagination,Php,Cakephp,Pagination,我有一个分页器,如下所示: var $paginate = array( 'order'=>array('ReleaseServer.server_environment'=>'ASC', 'ReleaseServer.server_name'=>'ASC'), 'joins'=>array( array( 'table'

我有一个分页器,如下所示:

    var $paginate = array(
        'order'=>array('ReleaseServer.server_environment'=>'ASC',
                           'ReleaseServer.server_name'=>'ASC'),
        'joins'=>array(
            array(
                'table' => 'release_server_to_components',
                'alias' => 'ReleaseServerToComponent',
                'type' => 'LEFT',
                'foreignKey' => false,
                'conditions'=> array('ReleaseServer.id = ReleaseServerToComponent.release_server_id')
            ),
            array(
                'table' => 'release_components',
                'alias' => 'ReleaseComponent',
                'type' => 'LEFT',
                'foreignKey' => false,
                'conditions'=> array('ReleaseServerToComponent.release_component_id = ReleaseComponent.id')
            )
        ),
        'group'=>array('ReleaseServer.id'),
        'contain' => array(
                'ReleaseServerToComponent' => array(
                        'ReleaseComponent' => array(
                            'Release'
                            )
                        )
                ),
        'limit' => 25,
    );
然后在控制器功能中,我执行以下操作:

$this->set('allServers', $this->paginate('ReleaseServer', $conditions));
其中,
$conditions
是查询的一些额外条件

正如你在上面看到的,我把限额定在25

然而,数据库中有29条记录,但页面上只显示了25条,页面上只显示了一个页面

但是当一个人单击其中一个列标题对其进行排序时,一些以前不存在的行会神奇地出现,而其他行则会消失。为什么会这样

如果你需要任何其他信息,请让我知道

更新

现在,我看到问题存在于
paginate
变量的
部分,但我需要它,这样我就不会得到相同内容的多行


如何解决此问题?

我通过向模型中添加一个新的
paginateCount()
函数来解决此问题:

function paginateCount($conditions = null, $recursive = 0, $extra = array())
{
     $count = $this->find('count', array(
        'fields' => 'DISTINCT ReleaseServer.id',
        'conditions' => $conditions
    ));
    return $count;
}