2010-04-01 1 views
3

저는 현재 zend로 응용 프로그램을 개발 중이며 모듈로 응용 프로그램을 분리했습니다.zend_navigation 및 모듈

기본 모듈은 로그인하지 않은 사용자가 액세스하고 자유롭게 둘러 볼 수있는 주요 사이트입니다. 로그인 할 때 사용자 유형에 따라 간단한 ACL로 제어되는 모듈 A 또는 모듈 B로 이동합니다. 모듈 A에 액세스 할 수있는 경우 모듈 B에 액세스 할 수 없으며 반대의 경우도 마찬가지입니다. 두 사용자 유형 모두 기본 모듈을 볼 수 있습니다.

이제 모든 모듈에서 전체 응용 프로그램 탐색을 관리하기 위해 Zend_Navigation을 사용하고 싶습니다. 모듈이나 아주 단순한 응용 프로그램 내에서 모든 예제가 작동 했으므로이 문제를 해결하는 방법을 모르겠습니다.

내 navigation.xml 파일은 다음과 같이하도록 시도했다 :

<configdata> 
<navigation> 

     <label>Home</label> 
     <controller>index</controller> 
     <action>index</action> 
     <module>default</module> 

     <pages> 
      <tour> 
       <label>tour</label> 
       <controller>tour</controller> 
       <action>index</action> 
       <module>default</module> 
      </tour> 

      <blog> 
       <label>blog</label> 
       <url>http://blog.mysite.com</url>     
      </blog> 

      <support> 
       <label>Support</label> 
       <controller>support</controller> 
       <action>index</action> 
       <module>default</module> 
      </support> 

     </pages> 

</navigation> 
</configdata> 

이를 기본 모듈에 대한 좋은 경우,하지만 난이 탐색 페이지에 다른 모듈에 대해 어떻게 갈 것인가? 각 모듈은 자신의 홈 페이지 및 다른 사람이 있습니다.

내 ACL을 처리하도록 작성된 preDispatch 플러그인에로드 된 각 모듈에 고유 한 navigation.xml 파일을 추가하는 것이 더 좋을까요 ?? 또는 하나의 대규모 내비게이션 파일에 보관하십시오?

팁이 환상적 일 것입니다.

감사합니다,

그랜트

+1

"각 모듈에 고유 한 navigation.xml 파일을 추가하는 것이 더 좋을까요?" 최고의 관리 가능한 솔루션처럼 보입니다. 그렇게하면 두 모듈을 잘 분리 된 상태로 유지할 수 있습니다. –

답변

0

그랜트,

나는 일반적으로 각 모듈 아래 config 디렉토리를 만들고, 거기에서 나는 navigation.xml 문서를 넣습니다. 이는 상호 종속성 문제를 완화하는 데 도움이됩니다.