我有以下的自定义路由(工作正常):
Router::connect('/:city', array('controller' => 'dealers', 'action' => 'index'), array('city' => '[a-z]+'));
有了这条路,我试图让分页页面2,3,...:
Router::connect('/:city/:id', array('controller' => 'dealers', 'action' => 'index'),
array(
'pass' => array('city', 'id'),
'city' => '[a-z]+',
'id' => '[0-9]+'
)
);
现在的第一个问题是,如果我进入domain.com/washington/2它不会ID传递给分页和我仍然得到第1页。
第二个问题是,我没有得到分页助手写上面的链接。 如果我尝试这在我的观点:
$this->Paginator->options(array
('url'=> array(
$city[0]['City']['url'],
$this->params['id']
)
)
);
它仍然给我:
http://domain.com/dealers/index/washington/page:2
我提前道歉,如果这是没有道理的,但我是新来这个,不能与现有的问题/答案在这里,或文档看着办吧。
更新1:
我现在尝试了domain.com/washington/page/2以下,但它只是路线分页第1页:
Router::connect('/:city/:slug/:id',
array('controller' => 'dealers', 'action' => 'index'),
array(
'pass' => array('city', 'slug', 'id'),
'city' => '[a-z]+',
'slug' => '[a-z]+',
'id' => '[0-9]+'
)
);
在动作我这样做:
public function index($slug = null, $id = null) {some code}
在视图中我添加:
$this->Paginator->options(array('url' => $this->passedArgs));
仍然没有运气,我会非常非常高兴,如果有人可以帮帮忙!