2012-01-29 80 views
4

我有一個staticController與下面的示例鏈接操作:@route註釋覆蓋另一條路線

/註冊 /印記

這就是例子註釋:

/** 
*@Route("/imprint", name="user.static.imprint") 
*/ 

,現在我具有以下用於鏈接其他頁面與動態鏈接名稱的註釋:

/** 
*@Route("/{area}", requirements={"id" = "!imprint"}, name="user.area.index") 
*/ 

我在樹枝中使用path()函數來創建鏈接。

生成的鏈接/印記 現在正在路由到第二個註釋。 我如何避免這個問題?

非常感謝。

+2

嘗試將索引 – Inoryy 2012-01-30 07:05:01

+0

以上的印記操作方法設置爲不同的控制器。 – 2012-01-30 08:10:46

+0

然後在索引之前包含imprint controller route config ... – Inoryy 2012-01-30 08:33:49

回答

3

第二條路線與第一條路線相同,並且與第一條路線相干擾,因此您需要優先考慮。

您的項目中的某處您將導入這兩個控制器路線作爲註釋(可能是/app/config/routing.yml)。看起來像這樣:

bar_route: 
    resource: "@FooBundle/Controller/BarController.php" 
    type:  annotation 
    prefix: /

現在最有可能第二個控制器導入高於第一。反過來。

+1

您好,我導入整個控制器文件夾作爲annotation.AcmeDemoBundle: 資源:「@ AcmeDemoBundle /控制器/」 類型:註釋 前綴:/ – 2012-01-30 10:16:27

+0

也只是把它分解手動喜歡在我的例子,並與第二確保控制器路線首先列出。 – Inoryy 2012-01-30 10:35:57

+1

當我把這個到routing.yml我有以下錯誤:http://stackoverflow.com/questions/9093322/symfony2-routing-failed-cannot-redeclare-class – 2012-02-01 12:11:48