Как заставить PassedArgs работать в Pagination в CakePHP? - PullRequest
1 голос
/ 12 июня 2009

У меня есть страница, которая возвращает результаты, отфильтрованные по идентификатору организации. URL выглядит так:

nameofview / organization_id: 1 / страница: 2 /

Я использую встроенные элементы управления Paginator и передаю в него $ this-> PassedArgs следующим образом:

<div class="paging">
    <?php echo $paginator->prev('<< '.__('previous', true), array('url' => $this->PassedArgs), null, array('class'=>'disabled'));?>
 |  <?php echo $paginator->numbers(array('url' => $this->passedArgs));?>
    <?php echo $paginator->next(__('next', true).' >>', array('url' => $this->passedArgs), null, array('class'=>'disabled'));?>
</div>

Ссылки выглядят хорошо для "чисел", но не работают для Next и Previous. Ссылки на обе страницы возвращают меня на одну и ту же страницу. Я думаю, что это потому, что он передает параметр "Page".

У кого-нибудь есть идеи, как передать правильные аргументы в $ paginator-> numbers?

Я пытался $ this-> passArgs ['organization_id'], но это возвращает ошибки.

1 Ответ

3 голосов
/ 13 июня 2009

Попробуйте это наверху вашего представления:

$paginator->options(array('url' => $this->passedArgs));

Таким образом, вы можете отбросить array('url' => $this->passedArgs) из ваших предыдущих / следующих / числовых строк, это должно работать просто отлично.

...