我有一个使用 AJAX 调用的控制器(发送 JSON 数据),所以我不使用视图。

我需要使用个人 查看助手 格式化我的数据,但是 在我的控制器中.

那可能吗 ?

或者也许我是 做错了 (也许我应该有一个视图,但是如何使用 JSON)?

有帮助吗?

解决方案

可以从所述控制器通过

访问任何视图助手
$this->view->helpername(/*params*/);
// or
$helper = $this->view->getHelper('helpername');
// or
$broker = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer');
$broker->getView()->helpername(/*params*/);

请参阅 Zend的:如何在控制器使用自定义函数从一个视图助手

不过,你可能是正确的,你这样做是错误的(搞笑PIC BTW 的),但我真的不能从你的问题告诉我们。请完善它,为什么你需要调用视图助手,什么是应该的格式。

其他提示

Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');

只要确保返回的观点是你想要的视图。因为下了线,该视图可能会被覆盖,并在控制器上你有一个巴掌新的看法。

和你设置上的动作助手和...控制器在踢之前认为所有这些价值观?所有随风而逝!

所以检验,假设在此之前,如果你得到一个视图的资源。真的是你所期望的相同的观点的资源,所有的瓦尔仍然存在。

您可能会很惊讶,因为我是!

您可以创建一个助手的一个实例。这将在控制器,模型工作,无论你需要的助手。

例如

// create Instance   
$serverUrl_helper = new Zend_View_Helper_ServerUrl();

// get the ServerUrl
$serverUrl = $serverUrl_helper->serverUrl();

另一种方法是使用 ContextSwitch 或 AjaxContext 操作助手. 。这允许您使用视图脚本,然后您可以通过标准方式调用视图帮助程序。

只要使用动作助手,许多视图助手的可作为动作助手太

或者直接通过使用Zend_Datesprintf

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top