CakePHP分页

CakePHP分页,cakephp,paginator,Cakephp,Paginator,我在分页方面遇到了一些问题,代码: $this->Paginator->settings = array( 'Visit' => array( 'limit' => 10 ) ); $visits = $this->Paginator->paginate('Visit'); echo count($visits); 计数给我:第1页=0,第2页=6,第3页=10,第4页=7。。。 为什么?我以为paginator会做这样的事情

我在分页方面遇到了一些问题,代码:

$this->Paginator->settings = array(
    'Visit' => array(
        'limit' => 10
    )
);
$visits = $this->Paginator->paginate('Visit');
echo count($visits);
计数给我:第1页=0,第2页=6,第3页=10,第4页=7。。。 为什么?我以为paginator会做这样的事情:

SELECT * FROM visits LIMIT 10 OFFSET pageNumber
我有4个关于访问表的不动产,也许这是个问题?

试试这个

$this->paginate = array('conditions'=>array(
    'all conditions'...,
    ),
    'limit' => 10,
    'recursive'=> 0 or -1
));
$this->Paginator->settings = $this->paginate;
$visits = $this->Paginator->paginate('Visit');
echo count($visits);

我找到了。有人正在删除AppModel类中afterFind函数返回的某些元素。我查了VisitModell的课程,但没查upclass,该死的。。。真蠢。非常抱歉浪费您的时间。

对我来说很好,我在
count($visions)
上得到的每个页面的数量都是相同的,sql是
SELECT*FROM visions LIMIT{$offset},{$LIMIT}
。这只是一个“我在想”的问题吗?或者这会给你带来错误(比如每页的访问次数不同之类的)?如果这给了你一个实际的错误,你能详细说明一下吗?这给了我错误。。。我对每个页面编辑的访问者计数不同:我的意思是不同=不是10个访问者,例如,对于16个页面,我有一个页面有10个访问者try$visions=$this->paginate();而不是$visions=$this->Paginator->paginate('Visit');将debug设置为2并显示已执行的sql.executed sql return 10元素幸运的是,我仍然得到了相同的结果是否只在分页时分配条件?