1

アクションコントローラーのviewModelに子を追加したくない:

// action controller
public function indexAction() {
    $result = new ViewModel();
    $result->setTemplate('application/view/another-action');

    $comments = new ViewModel();
    $comments->setTemplate('application/view/child-comments');
    $result->addChild($comments, 'child_comments');

    return $result;
}
...
// View
<div>
<?php echo $this->child_comments ?>
</div>

別のビューにビューを含めたい:

<div>
  <?php
  $view = new ViewModel();
  $view->setVariables($this->var);
  $view->setTemplate('page_nav.phtml');
  // here I want to render view 
  ?>
</div>

出来ますか?

4

2 に答える 2

0

これはPartialビューヘルパーが行うことです(ドキュメントは古くなっているようですが、とにかくここにリンクします):

<div>
    <?php echo $this->partial('page_nav', array('var' => $this->var)) ?>
<div>

明らかに、あなたpage_navはあなたのビューリゾルバによって知られているべきです。

于 2013-03-19T04:00:21.707 に答える
0

私はこれが古いことを知っていますが、あなたは単に電話することもできます$this->render('path/to/view-script')

于 2014-02-27T11:34:49.700 に答える