在CakePHP 2.2中将命名参数转换为GET参数以进行分页

时间:2012-10-22 08:47:09

标签: cakephp cakephp-2.0 cakephp-2.1 cakephp-2.2

我正在尝试按照documentation中给出的说明将命名参数转换为GET参数,以便在CakePHP 2.2中进行分页,但它无效。

而不是:

http://localhost/cake/posts/yourPosts/page:2?url=posts%2FyourPosts

我想要这个:

http://localhost/cake/posts/yourPosts/?page=2&url=posts%2FyourPosts

问题是,当我使用GET方法提交表单时,我不想保留当前页面,而且目前,它默认是这样做的,因为它不是普通的参数,而是命名的参数。

?url = posts%2FyourPosts 是使用GET方法自动添加的)

我在我的视图中尝试过这个,但它仍然将参数作为命名参数传递:

$this->Paginator->options(array('convertKeys' => array('page')));

echo $this->Paginator->next(' >', array('class' => 'button next right'), null, array('class' => 'next button'));

我做错了什么?

1 个答案:

答案 0 :(得分:2)

你应该从源头解决问题,而不是隐藏它: http://book.cakephp.org/2.0/en/core-libraries/components/pagination.html#pagination-with-get-parameters

public $paginate = array(
    'paramType' => 'querystring'
);
控制器中的