2013-07-14 68 views
0

我正試圖從ZF1切換到ZF2。從我讀過的有關新Zend \ MVC \ Router及其配置方式的文章看來,每個位置應該在['router'] ['routes']配置密鑰中描述。描述每個ZF2路線 - 是否真的需要?

這是真的嗎?在ZF1中,您可以構建具有多個位置的複雜應用程序,而不必描述一條路線。我發現很難相信,希望我錯過了一些東西。

謝謝!

回答

1

路由的工作方式與ZF1類似。 config in the skeleton app包括一些示例路由,其中​​之一是/:controller/:action路由(第42行)。所以這是您的開箱即用的ZF1風格的MVC路線。

在ZF1中,框架會爲您添加/:controller/:action/:module/:controller/:action路線(如果您有一些自定義要求,則必須將其刪除)。在ZF2中,您必須自己定義路線,但是如果您需要與ZF1相同的設置,則框架應用程序設置將以相同的方式工作,不需要模塊前綴。

+0

我認爲你錯了。我已經解剖了https://github.com/akrabat/zf-web.git - 是的,的確,我檢查過的每個位置都有一條路線。看看[Controller Config](https://github.com/akrabat/zf-web/blob/master/config/autoload/page-controller.global.php)。如果ZF2網站的作者不需要,爲什麼ZF2網站的作者會配置每個位置? – temuri

+2

冗長的路由有一些優點 - 首先,它會發生什麼更清晰的事情。 zf-web源代碼利用ZF2的樹形路由 - 例如,有許多路由是「參與」路由的子節點。該路由配置當然可以縮短,但這樣做沒有特別的優勢。 –