2013-03-22 2 views
0

내 MVC 애플리케이션의보기 및 레이아웃 스크립트에서 나는 isLoggedIn() 또는 isAdmin()과 같은 편의 메소드에 대한 액세스를 정기적으로 요구합니다. 이것들을 기본 뷰에 넣어서 $this->isLoggedIn() 또는 $this->isAdmin()으로 액세스 할 수 있도록하고 싶습니다. 이 작업을 수행하는 올바른 방법은 무엇입니까?Zend View를 올바르게 확장하는 방법

MY_Base_View로 Zend_View를 확장 해 보았습니다. 그런 다음 View 리소스를 만들고 부트 스트랩에서 초기화했습니다. 페이지 제목이 잘 작동하기 때문에 초기화된다는 것을 알고 있습니다. 다음은 자원의 코드는 다음과 같습니다

내가 print_r($this),이 객체가 젠드보기 객체 (안 MY_Base_View)는 말한다면 나는, 그러나,보기 스크립트에있어
$this->_view = new MY_Base_View(); 
$this->_view->headTitle('My page title!'); 

.

레이아웃과 비슷한 문제가있었습니다.

감사합니다.

답변

0

아 !! 그것을 밖으로 분류했다.

$viewRenderer = Zend_Controller_Action_HelperBroker 
     ::getStaticHelper('ViewRenderer'); 
    $viewRenderer->setView($this->_view);   

을 (그것은 설명서의 리소스 섹션에 있어요!) 어쨌든, 그게 내가해야 할 일을했을 전부 다음과 같이 뷰 리소스에서, 나는 ViewRenderer에 대한보기를 설정하는 데 필요한. 작업을 수행하기 위해 레이아웃은 렌더러에 등록 된 뷰를 찾습니다.

+0

또한 뷰 헬퍼를 사용하여이 기능을 사용할 수도 있습니다 –

관련 문제