2013-07-29 4 views
2

I 전방 십자 인대 및 역할과 젠드 탐색 객체가 : 완벽젠드 탐색, ACL 및 파셜

echo $this->navigation()->menu('navigation') 
->setAcl($this->acl) 
->setRole(($this->user ? 'user' : 'guest')) 
->render(); 

및 작업을

하지만 사용자 정의 부분 사용

(일부 페이지를 숨 깁니다) :

echo $this->navigation()->menu('navigation') 
->setAcl($this->acl) 
->setRole(($this->user ? 'user' : 'guest')) 
->setPartial('partial/twitterBootstrapNavHeadUl.phtml') 
->render(); 

및이 부분 함유량

모든 페이지와는 부분 $ this-에 전달
foreach ($this->container as $page) 
    echo $this->navigation()->menu()->htmlify($page); 

> 컨테이너 방법 어쩌면 난 부분

foreach ($this->container as $page) 
    echo $this->navigation()->menu()->setAcl($this->acl)->setRole(($this->user ? 'user' : 'guest'))->htmlify($page); // ????????????????????? 

만에 ACL 등을 통과해야

(ACL을 통해이 unaviable로 잘 살고) 를 성취하다?

내가해야 할 일/알고있는 것이 있습니까?

답변

9
foreach ($this->container as $page){ 
    if($this->navigation()->accept($page)) 
     echo $this->navigation()->menu()->htmlify($page); 
} 

왜? 사용자 정의보기에서 직접 검사를 실행해야합니다.

+0

와우. 감사. 나는 문서 작성에 많은 시간을 할애했고 어디서나 이것을 찾을 수 없었다. –

+1

대답이 맞을까요 제대로 작동하지 않을까요? 파고 들고 생각한 후에 Navigation :: setDefaultAcl & Navigation :: setDefaultRole을 사용하여 작동되게했습니다. 미래에 도움이 될 수 있기를 바랍니다. – MKroeders

+0

setDefault 메소드도 @Hendriq를 사용했으나 Aleksander가 게시 한대로 수동으로 acl을 확인해야했습니다. – webDEVILopers