我使用CakePHP2,並沒有找到如何更改(重新配置)分頁限制,例如,從20到30CakePHP的分頁全局配置
有一個「全局默認限制」設置的記錄數量成「paginator」(PaginatorHelper?)?
「global」意思是「全部網站」。
我使用CakePHP2,並沒有找到如何更改(重新配置)分頁限制,例如,從20到30CakePHP的分頁全局配置
有一個「全局默認限制」設置的記錄數量成「paginator」(PaginatorHelper?)?
「global」意思是「全部網站」。
綜觀對CakePHP的分頁程序組件的代碼,它看起來像你可以在控制器中使用以下語法設置全侷限制(最好的地方將是你的AppController):
...
public $paginate=array();
...
public function beforeFilter() {
parent::beforeFilter();
$this->paginate['limit'] = 15;
}
我沒有測試過它,但希望它可以按需要工作。
哼...在app/Controller/AppController.php上測試,在beforeFilter()方法上添加...全局錯誤:「間接修改重載屬性......沒有任何效果」。 –
如果使用before過濾器,只需在'AppController'中放置'public $ paginate = array();';這個錯誤然後解決。再次,[閱讀文檔](http://book.cakephp.org/2.0/en/core-libraries/components/pagination.html)。這是所有 – Ross
根據[this](https://groups.google.com/forum/?fromgroups=#!topic/cake-php/Fxh_ldO9noU)$ this-> paginate ['limit'] = 15;和parent :: beforeFilter();在每個控制器的beforeFilter回調之前 – erem
在你的控制器
public $paginate = array('limit' => 25);
是的,這是本地的,但我需要「全球」,適用於所有網站。 –
這就是應用程序控制器的用途。 – dogmatic69
我用AppController.php測試並確定!抱歉,我的投票是針對@Martin的。你什麼都不說,只有「你的控制器」......它被理解爲「特定的」,我(和任何其他Cake初學者)不知道AppController是「全局配置位置」。 –
您還沒有通讀CakePHP文檔的頁面呢? http://book.cakephp.org/2.0/en/core-libraries/components/pagination.html –
是......「CakePHP中的分頁由控制器中的組件提供」。但作爲一個框架,它可以提供另一種「重新配置」所有站點的機制,而不是每個控制器。 –