2013-08-26 64 views
0

我有CakePHP的路線與子文件夾CakePHP的路線

Router::connect(
    '/catalog/:slug/:slug2/*', array(
     'controller'=>'pages', 
     'action'=>'view' 
)) 

一個問題,當我有網址 /catalog/something/page:2 - 它也抓住這個環節。但它不應該,因爲在參數page:2之後沒有斜線,如何解決它?謝謝!!

+0

我希望你已經閱讀[文檔](http://book.cakephp.org/2.0/en/development/routing.html)? – Blazemonger

+0

閱讀並仍在閱讀! – Gediminas

回答

1

我希望這可能會有所幫助。

Router::connect(
    '/catalog/:slug/:slug2/*', array(
     'controller'=>'pages', 
     'action'=>'view' 
), array('pass' => array('slug', 'slug2'))); 

並且在您的視圖文件中,您可以這樣編寫以生成以上鍊接。

echo $this->Html->link('link', array(
    'controller' => 'pages', 
    'action' => 'view', 
    'slug' => 'slug', 
    'slug2' => 'slug2' 
)); 
+0

不行,它不起作用。如果我以你的方式提供鏈接,我會在網址中使用slug:x和slug2:x標籤 - 我想避免這種情況。所以我認爲沒有理性的方法來做到這一點,現在我需要大量的解決方法,因爲這個蛋糕錯誤 – Gediminas

+1

你想從'/ catalog/something/page:2'到'/ catalog/something /'' –

+1

如果是這樣,那麼你可以像這樣傳遞'echo $ this-> Html-> link('link',array( 'controller'=>'pages', 'action'=>'view', 'page'=>'2' ));'而不是slu。。 –