如何從分頁幫助器生成一個下拉列表每頁的項目?默認值爲每頁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,很好的答案,真的幫助我節省了時間 –