젠드 프레임 워크에서 부분 및 자리 표시 자의 차이점을 누구나 설명 할 수 있습니까?젠드 프레임 워크 : 부분과 자리 표시 자의 차이점은 무엇입니까
제 생각에는 placeholder와 partials를 모두 사용하여 특정 템플릿/컨테이너를 렌더링 할 수 있습니다.
어떤 조건을 부분적으로 사용해야하고 어떤 시나리오가 자리 표시 자에 가장 적합합니까?
젠드 프레임 워크에서 부분 및 자리 표시 자의 차이점을 누구나 설명 할 수 있습니까?젠드 프레임 워크 : 부분과 자리 표시 자의 차이점은 무엇입니까
제 생각에는 placeholder와 partials를 모두 사용하여 특정 템플릿/컨테이너를 렌더링 할 수 있습니다.
어떤 조건을 부분적으로 사용해야하고 어떤 시나리오가 자리 표시 자에 가장 적합합니까?
placholder는 뷰와 레이아웃 사이에서 데이터를 유지하는 데 사용되며 부분은 특정 작업을 수행하는 특정보기에서 사용됩니다.
참조에서 발췌 한 내용을 참조하십시오.
77.4.1.6. 자리 표시 자 도우미 : 자리 표시 자보기 도우미는보기 스크립트와보기 인스턴스간에 콘텐츠를 유지하는 데 사용됩니다. 또한 은 콘텐츠 집계, 나중에 사용하기 위해 스크립트 내용보기, 콘텐츠 (및 집계 된 콘텐츠의 사용자 지정 구분 기호)에 사전 및 사후 텍스트를 추가하는 것과 같은 유용한 기능을 제공합니다.
77.4.1.5. 부분 도우미 : 부분 뷰 도우미는 지정된 변수 범위 내에서 지정된 템플릿을 렌더링하는 데 사용됩니다. 변수 이름 충돌에 대해 걱정할 필요가없는 재사용 가능한 템플릿 조각의 기본 용도는 입니다. 또한 특정 모듈의 부분보기 스크립트 을 지정할 수 있습니다.
다음은 원하는 것처럼 들리는 간단한 자리 표시 자의 예입니다. (데이터를 유지)
이 경우에는 메뉴 ID가 부트 스트랩에 설정되어 있지만이 것은 간단하지 않습니다.
는protected function _initMenus() {
$view = $this->getResource('view');
$view->mainMenuId = 4;
$view->adminMenuId = 5;
}
[편집]
더 좋은 자리 예는 순서에있을 수 있습니다 생각합니다. 이 자리 표시자는 여러 구성에서 여러 컨트롤러의 여러 동작에서 사용하는 작은 검색 양식입니다.
이 형식은 음악 아티스트 만 검색하도록 설정되어 있으므로이 자리 표시자를 사용하는 컨트롤러는 setAction(), 다른 레이블 및 경우에 따라 다른 자리 표시 자 텍스트에 대해 다른 경로를 갖습니다. 나는이 형식을 사용하여 음악 및 비디오 데이터베이스를 검색합니다.
저는 항상 동일한 설정을 사용하거나 플러그인을 설치하는 데 더 많은 관심을 가지고 있습니다.
내 레이아웃에서 자리 표시자를 사용합니다 (모든보기 스크립트에서도 사용할 수 있음). placeholder에 값이있을 때 검색 양식이 렌더링되고 placeholder에 값이 없을 때 렌더링되지 않습니다.
//in the layout.phtml
<?php echo $this->layout()->search ?>
는 단지 완료된 것으로, 여기서 폼이 viewscript 장식으로 사용하는 부분이다.
<article class="search">
<form action="<?php echo $this->element->getAction() ?>"
method="<?php echo $this->element->getMethod() ?>">
<table>
<tr>
<th><?php echo $this->element->query->renderLabel() ?></th>
</tr>
<tr>
<td><?php echo $this->element->query->renderViewHelper() ?></td>
</tr>
<tr>
<td><?php echo $this->element->search ?></td>
</tr>
</table>
</form>
</article>
이 예제는 부분 및 자리 표시 자의 차이점을 실제로 설명해야합니다.
나는 당신이 여기, 중 사용자 정의보기 도우미 아마도 기존 Zend_View_Helper_FormSelect 클래스를 확장하거나 사용자 정의 필요에 맞는 젠드 양식 요소를 만들 더 도움이 될 일을 생각합니다. 또는 일반적인 위치에있는 도우미 스크립트가 최선의 방법 일 수 있습니다.
내가 원하는 것은 각 컨트롤러의 preDispatch에서 제공하는 대신 단일 장소에서 국가의 동적 배열을 제공하는 것입니다. 내 dropdown.phtml은/application/views/scripts 폴더에 있으며, 다른 모듈과 컨트롤러에 걸쳐 zend partial/placeholder를 사용하여 phtml을 재사용하고 싶습니다. – neeraj
여기에 내 dropdown.phtml 코드 php if (isset ($ this-> countries) && count ($ this-> countries)> 0) :?> > php endif; ?> – neeraj
설명해 주셔서 감사합니다. 두 가지 유스 케이스의 간단한 예가 있습니까? 차이점 컨트롤러뿐만 아니라 모듈을 국가 드롭 다운에 배치해야하는 요구 사항이 있습니다. 그렇다면 템플릿을 한 곳에서 유지하고 컨트롤러뿐만 아니라 모듈 전체에서 템플릿을 다시 사용하는 야수 방법은 무엇입니까? – neeraj