おつかれさまです。
/hogeにアクセスするとHogeコントローラのindexActionに飛んで
/hoge/index.tplとかがレンダリングされるノリかと思います。
このとき、読み込むviewファイルをindex.tplじゃなくてfuga.tplにしたいというときの話です。
/hogeにアクセスするとHogeコントローラのindexActionに飛んで
/hoge/index.tplとかがレンダリングされるノリかと思います。
このとき、読み込むviewファイルをindex.tplじゃなくてfuga.tplにしたいというときの話です。
読み込むviewだけ変えるというのならけっこう方法があって
ざっとわかるだけでも以下があります。
$this->_helper->viewRenderer->setScriptAction('fuga')このうち、上3つは同じ動きをするようですが、最後の1つは違います。
$this->_helper->viewRenderer('fuga');
$this->_helper->viewRenderer->setRender('fuga');
$this->render('fuga');
上3つは実際の描画はpostDispatchの後です。
一方$this->render('');は即時描画なので、postDispatchはその後に動きます。
なので、例えば、postDispatchで変数のアサインとかをしていると
$this->renderの場合は、その変数はアサインされないので気をつけましょう。
あと、上3つは同じっていいましたが、このお話の内容に限っての話で
どっか別のところで違うところはあるかもしれません。。
コメントする