在我的Cake应用程序中,我有一个控制器“completed_projects”。它的索引操作不带参数,并列出了一些项目。可以访问不同的页面
example.com/completed_projects/index/page:23
等。
我想让网址像这样:
example.com/portfolio/page23
显然我需要为此制定一些路线。我尝试了很多像:
Router::connect('/portfolio/page:num', array('controller' => 'completed_projects', 'action' => 'index'), array('pass'=>'page:num', 'num'=>'[0-9]+'));
还有:
Router::connect('/portfolio/:page:num', array('controller' => 'completed_projects', 'action' => 'index'), array('named'=>'num', 'page'=>'page', 'num'=>'[0-9]+'));
我也一次又一次地尝试修改它们,但没有一个能很好地运行。
我正在使用CakePHP 1.3。任何帮助将不胜感激。
答案 0 :(得分:1)
Router::connect('/portfolio/page:page_num',
array('controller'=>'completed_projects', 'action'=>'index'),
array('page_num'=>'[\d]+')
);
在您的控制器中,访问page_num:
$this->params['page_num'];