2009-08-12 5 views
0

을 기본지도로 :하는 경로를

":module/:controller/:id" 

이에 매핑 :

":module/:controller/:action/id/$id" 

Zend_ Controller_ Router_Exception: “xyz” is not specified

내가이 길을 갖고 싶어 Zend Framework로이 작업을 수행 할 수 있습니까? 그 URL에 브라우저를 전달하고 싶지 않습니다. Zend Framework에이 경로를 처리하는 방법을 알려 주기만하면됩니다.

이유는 내가 이것을하고 싶습니다, 당신은 그 링크 된 질문에 그들을 찾을 수 있습니다.

답변

0

예 가능합니다.

resources.router.routes.something.type = "Zend_Controller_Router_Route_Regex" 
resources.router.routes.something.route = "mymodule/mycontroller/([0-9]+)" 
resources.router.routes.something.defaults.module = "mymodule" 
resources.router.routes.something.defaults.controller = "mycontroller" 
resources.router.routes.something.defaults.action = "myaction" 
resources.router.routes.something.map.1 = "id" 

내가 익숙하지 오전 : 내 application.ini에서 내가 정규식이 방법을 사용하여 내 경로를 지정 경로를 정의하는 "변수"방법을,하지만 당신은 내 예에서 기본 컨트롤러를 설정하는 기능을 할 수 있습니다, 모듈 및 작업을 명시 적으로 URL에 정의 할 필요가 없습니다.

+0

내 문제는 해결되지 않습니다. 다른 길로 경로를 매핑하고 싶습니다. 예제에서 모듈, 컨트롤러 및 동작을 정적으로 배치하는 다른 경로를 만듭니다. 나는 모듈, 컨트롤러 및 동작에 대한 변수를 유지하고 싶습니다. –

+0

나는 그것을 해결할 것이라고 말하지 않았다. 나는 당신의 경로를 다른 경로로지도화할 가능성이 있음을 보여줄뿐만 아니라, 당신이 당신의 경로를 기반으로 할 수 있기를 희망하는 코드로부터 예제를 제공했다. "([a-zA-Z] +)/([a-zA-Z] +)/([0-9] +)로"mymodule/mycontroller/([0-9] +) "를 쉽게 바꿀 수 있습니다. "그런 다음 1을 모듈에 매핑하고 2를 컨트롤러에 매핑하고 3을 ID에 매핑합니다. – Mark