$this-> passedArgs является предпочтительным способом сделать это от представления.
Секрет добавляет эту строку к Вашему представлению:
$paginator-> опции (массив ('URL' => $this-> passedArgs));
(Я создал этот вопрос и ответ, потому что это - очень заданный вопрос, и я продолжаю иметь необходимость откопать ответ, так как я не могу помнить это.)
Вы сохранили меня! Это помогло мне много, Спасибо.
Мне был нужен способ передать параметры, которые я первоначально отправил по почте ($this-> данные) к компоненту подкачки страниц, таким образом, мой пользовательский запрос продолжит использовать их.
Вот то, что я сделал:
на моем представлении я поместил
$paginator->options(array('url'=>$this->data['Transaction']));
перед $paginator-> предыдущий (' <<Предыдущий 'материал.
Выполнение этого сделало следующую ссылку на paginator как ".../page:1/start_date:2000-01-01%2000:00:00/end_date:3000-01-01%2023:59:59/payments_recieved:1"
Затем на моем контроллере я просто должен был получить параметры и поместить их в $this-> данные, таким образом, моя функция продолжится, как обычно:
foreach($this->params['named'] as $k=>$v)
{
/*
* set data as is normally expected
*/
$this->data['Transaction'][$k] = $v;
}
И вот именно. Подкачка страниц работает с моим пользовательским запросом.:)
Варианты здесь являются хорошим ориентиром ... Вы также можете проверить дополнительную информацию о разбивке на страницы cakePHP на сайте cakephp.org/view/166/Pagination-in-Views
С этим параметром 'url' вы можете поместить только желаемую строку перед разбивкой на страницы в URL ..
, если я использую эту технику:
$urlpagin = '?my_get1=1&my_get2=2';
$paginator->options = array('url'=>$urlpagin);
я получаю только:
url/controller/action/?my_get1=1&my_get2=2/sort:.../...
и Cake потерял мои параметры получения
У вас есть альтернативная технология?