0
私は、アクションヘルパーから一部のデータを送信してパーシャルを表示したいのですが、それを行うことができません。ここで私が使用しているすべての関連するコードです。アクションヘルパーから部分ビューにデータを送信
私のlayout.phtml
このプレースホルダを使用しています。 onDemandナビゲーションメニューを生成します。
<?php echo $this->placeholder('action-navigation'); ?>
私がコントローラやアクションメソッドで必要なときには、このコードを使用するだけです。
$this->_helper->navigation()->renderActionNavigation();
アクションヘルパーは私が使用しています。
class Zend_Controller_Action_Helper_Navigation extends Zend_Controller_Action_Helper_Abstract
{
private $_view = null;
public function direct()
{
$this->_view = $view = Zend_Layout::getMvcInstance()->getView();
$this->_view->placeholder('action-navigation');
return $this;
}
public function renderActionNavigation()
{
$config = new Zend_Config_Xml(
APPLICATION_PATH.'/configs/navigation.xml', strtolower(
$this->getRequest()->getControllerName().
$this->getRequest()->getActionName()
)
);
$container = new Zend_Navigation($config);
// here i want to send $container to _action-navigation.phtml.
$this->_view->addScriptPath(APPLICATION_PATH.'/layouts/')->render('partials/_action-navigation.phtml');
}
}
これは私が問題私はそれをどのように行うか_action-navigation.phtml
部分図にアクションヘルパーからデータを送信している_action-navigation.phtml
$this->placeholder('action-navigation')->captureStart();
//i want to get zend_navigation instance. from the above action helper here.
$this->placeholder('action-navigation')->captureEnd();
部分私の見解ですか?
ありがとうございます。代わりにrender()
の
それが動作します。あまりにも@リヤリありがとう:) –