2010-11-19 2 views
6

어떤 이유에서든 올바른 구문을 사용하여 컨트롤러 (profileController)의 변수를 부분 (video.phtml)에 전달할 수 없습니다.컨트롤러에서 Zend의 부분 변수로 전달

난 당신이

$this->view->somedata = "somedata"; 

같은 전망에 변수를 전달 알고 당신은 당신이 부분에 대해 그렇게 얼마나

< ?= $this->somedata ?> 

로보기에서 당겨?

답변

14

<?php echo $this->partial(scriptpath, [module], [data])?> 부분을 렌더링 할 때 스크립트가있는 모듈과 해당 부분이 액세스해야하는 데이터를 전달할 수도 있습니다. 이것이 부분 데이터가 특정 데이터를 볼 수있게하는 이유입니다.

다음과 같은 시나리오가 있다고 가정 해 보겠습니다. 컨트롤러의 많은 데이터를보기로 푸시합니다. 특정 부분에서는 앱의 여러 위치에서 다시 사용되며 특정 유형의 데이터에만 액세스 할 수 있도록하고 데이터가 렌더링 될 때마다 일관되게 이름을 지정하려고합니다. 컨트롤러에서

: 뷰에서

$this->view->namedVariableThatCouldBeWhatever = $data; 

: 부분에서

echo $this->partial(
    $partialName, 
    array (
    'standardName' => $this->namedVariableThatCouldBeWhatever 
) 
); 

:

<?php foreach($this->standardName as $item) : ?> 
    //render partial 
<?php endforeach; ?> 
+0

감사 패트릭 당신은 다음과 같은 일을 할 것입니다! 당신은 최고예요 ! – TuK

+0

최고? 동의했다. – PurplePilot

+0

굉장! Patrik Your Rock. –

관련 문제