如何从分页帮助器生成一个下拉列表每页的项目?默认值为每页20个项目,我想是这样的:CakePHP每页项目帮手
Show
<select>
<option value="10">10</option>
<option value="25">25</option>
<option value="50">50</option>
<option value="100">100</option>
</select>
entries
如何从分页帮助器生成一个下拉列表每页的项目?默认值为每页20个项目,我想是这样的:CakePHP每页项目帮手
Show
<select>
<option value="10">10</option>
<option value="25">25</option>
<option value="50">50</option>
<option value="100">100</option>
</select>
entries
正如@BigToach提到我有这个在我的控制器
$this->paginate = array(
'paramType' => 'querystring',
'limit' => 30,
'maxLimit' => 100
);
添加方法和下面的代码添加到我的浏览
$limit = $this->params->query['limit'];
$options = array(5 => '5', 10 => '10', 20 => '20');
echo $this->Form->create(array('type'=>'get'));
echo $this->Form->select('limit', $options, array(
'value'=>$limit,
'default'=>20,
'empty' => FALSE,
'onChange'=>'this.form.submit();',
'name'=>'limit'
)
);
echo $this->Form->end();
(这仅仅是一个上Warthel4578“的评论回答,但我没有足够的代表评论尚未...只是想分享这个提示,谁遇到同样的问题,我有这个解决方案)
因此,在分页结果的初始页面加载时,我一直收到错误“未定义索引:限制”(在设置$limit = $this->params->query['limit'];
的行上),但更改下拉值并更新分页结果后,错误消失。
在地方$limit = $this->params->query['limit'];
,我不得不用这个在我看来:
$page_params = $this->Paginator->params();
$limit = $page_params['limit'];
我想你可以使用:
// Use the defaults.
echo $this->Paginator->limitControl();
更多信息在
https://book.cakephp.org/3.0/en/views/helpers/paginator.html#creating-a-limit-selectbox-control
+1,很好的答案,真的帮助我节省了时间 –