我有一个路线,看起来像这样:如何防止控制器和动作在cakephp中出现在URL中?
Router::connect('/Album/:slug/:id',array('controller' => 'albums', 'action' => 'photo'),array('pass' => array('slug','id'),'id' => '[0-9]+'));
,另一个是这样的:
Router::connect('/Album/:slug/*',array('controller' => 'albums','action' => 'contents'),array('pass' => array('slug')));
什么不第一个匹配。在'albums'控制器的'内容'操作中,我自己负责分页 - 意思是我检索命名参数'page'。 用于第二路径URL应该是这样的: http://somesite.com/Album/foo-bar/page:2
上面的网址确实有效,但是当我尝试使用HTML助手(网址,链接)输出这样一个URL,它附加控制器和行动开始,像这样: http://somesite.com/albums/contents/Album/foo-bar/page:2
我不喜欢。 一个使用的HtmlHelper的代码是这样的:
$html->url(array('/Album/' . $album['Album']['slug'] . '/page:' . $next))
我被迫使用不同的解决方案。仍然标记你的答案是正确的。 – r0nny1l