這應該是可以的,是的。首先,你需要一個合適的路線,使得使用名爲page
的路由元素,如:
Router::connect('/model/view/:page', [
'controller' => 'Models',
'action' => 'view'
]);
這是必需的,因爲分頁程序助手將通過生成鏈接時,URL陣列名爲page
鍵設置頁碼。如果路由中沒有具有該名稱的元素,則該值將以查詢字符串結尾。同樣重要的是不要將page
元素標記爲要傳遞,否則該值將滑入分頁程序幫助程序生成的URL數組中,並且不再與您的路由匹配。
您需要做的另一件事是確保paginator組件可以訪問請求的頁碼。默認情況下,組件從請求查詢字符串變量或分頁選項中讀取值。因此,在控制器例如,你可以這樣做:
$page = $this->request->param('page');
if ($page !== null) {
$this->paginate['page'] = $page;
// or
$this->request->query['page'] = $page;
}
// ...
$result = $this->paginate();
對於一些較乾的,你可以在自定義組件,或擴展分頁程序組件移動這一點。
又見
來源
2017-01-30 20:30:53
ndm
槽糕......附頁碼成爲參數,和更多的記錄添加,那將是現在不可能將其加入書籤並期待相同的數據?我越想它,這似乎越不切實際。能夠建立鏈接,同時在分頁內提供網址末尾的記錄PK是很好的... – TekiusFanatikus
好吧,如果書籤是你想要支持的,那麼這不是一個合適的解決方案,不。使用主鍵或任何列進行分頁已超出內置分頁程序的範圍,並且與您的原始問題完全不同。 @TekiusFanatikus – ndm