AJAX で呼び出される (JSON データを送信する) コントローラーがあるため、ビューは使用しません。
個人用ビュー ヘルパーを使用してデータをフォーマットする必要がありますが、 controller .
それは可能ですか?
それとも、間違っているのかもしれません(ビューが必要かもしれませんが、JSONではどうですか)?
AJAX で呼び出される (JSON データを送信する) コントローラーがあるため、ビューは使用しません。
個人用ビュー ヘルパーを使用してデータをフォーマットする必要がありますが、 controller .
それは可能ですか?
それとも、間違っているのかもしれません(ビューが必要かもしれませんが、JSONではどうですか)?
次の方法で、コントローラーから任意の ViewHelper にアクセスできます。
$this->view->helpername(/*params*/);
// or
$helper = $this->view->getHelper('helpername');
// or
$broker = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer');
$broker->getView()->helpername(/*params*/);
Zend: How to use a custom function from a view helper in the controller? を参照してください。
ただし、間違っていることは正しいかもしれませんが(面白い写真btw)、あなたの質問からは本当にわかりません。ビューヘルパーを呼び出す必要がある理由と、何をフォーマットする必要があるかについて、それを改良してください。
Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
返されたビューが目的のビューであることを確認してください。後で、ビューが上書きされる可能性があり、コントローラーで新しいビューを叩く可能性があるためです。
そして、アクションヘルパーなどのビューで設定したすべての値...コントローラーが開始される前に?すべてが風と共に去りました!
そのため、ビュー リソースを取得するかどうかを想定する前にテストしてください。これは実際には期待どおりのビュー リソースであり、すべての var がまだ存在します。
あなたは私と同じように驚くかもしれません!
ヘルパーのインスタンスを作成できます。これは、コントローラー、モデル、およびヘルパーが必要なあらゆる場所で機能します。
例えば。
// create Instance
$serverUrl_helper = new Zend_View_Helper_ServerUrl();
// get the ServerUrl
$serverUrl = $serverUrl_helper->serverUrl();
もう 1 つの方法は、ContextSwitch または AjaxContext action-helpersを使用することです。これにより、view-script を使用して、そこから標準的な方法で view-helper を呼び出すことができます。
アクション ヘルパーを使用するだけです。ビュー ヘルパーの多くはアクション ヘルパーとしても利用できます。
Zend_Dateまたは、またはを使用して直接sprintf。