CakePHP 3.x:带有查询字符串的路由

时间:2015-10-09 12:31:08

标签: php cakephp routes cakephp-3.0

最终使用CakePHP 3删除了命名参数。现在我想知道是否有一种简单的方法来创建使用查询字符串的路由。

现在我有:

http://mysite/posts?page=2

虽然我想:

http://mysite/posts/2

我已阅读CakePHP book,但我没有找到有用的示例。

当我说“一种简单的方法”时,我的意思是使用路线,而不是控制器或分页器。

修改 我知道我可以这样做:

$routes->connect('/posts/:page', ['controller' => 'Posts', 'action' => 'index'], ['page' => '[0-9]+', 'pass' => ['page']]);

控制器:

public function index() {
    if($this->request->param('page'))
        $this->request->query['page'] = $this->request->param('page');

    //other code...
}

但是这样我需要:

  1. 修改我的控制器;
  2. 修改paginator(新的url有效,但CakePHP不会自动使用它。)

0 个答案:

没有答案