2017-05-30 63 views

回答

2

看看在鏈接的文檔中給出的示例路由模式,嵌套Articles>Comments資源將創建路線Comments與以下模式:

/articles/:article_id/comments 
/articles/:article_id/comments/:id 

您還可以檢查$ bin/cake routes獲取列表所有連接路線的模式和默認值。你要找的路線將在那裏列爲是這樣的:

+----------------+--------------------------------+--------------------------------------------------------------------------+ 
| Route name  | URI template     | Defaults                 | 
+----------------+--------------------------------+--------------------------------------------------------------------------+ 
| comments:index | /articles/:article_id/comments | {"controller":"Comments","action":"index","_method":"GET","plugin":null} | 

路由綁定到特定的HTTP方法(如上面可以在默認列中可以看出)的所有資源,即內部的_method選項使用,並且父ID以前綴單數控制器/資源名稱爲前綴。

要匹配Comments索引,只需將Comments控制器和index按照常規操作即可。另外通過相應_method(對於indexGET),並通過父ID在名爲方式,即作爲article_id,如:

[ 
    'controller' => 'Comments', 
    'action' => 'index', 
    '_method' => 'GET', 
    'article_id' => 4 
] 

參見

+0

非常感謝!解決方案非常簡單 – jurrieb

0

您可以加入Html和網址幫手,就像這樣:

<?= 
    $this->Html->link(
     'Enter', 
     $this->Url->build('/articles/4/comments', true), 
     ['class' => 'button', 'target' => '_blank'] 
    ); 
?> 

參見: