Zend Framework:如何从视图脚本调用控制器操作助手?

发布于 2024-11-17 01:33:04 字数 256 浏览 3 评论 0原文

我有一个自定义控制器操作助手,我希望能够从视图脚本调用它。我怎样才能实现这个目标?

解决方案:

警告:您可能并不真的想从视图脚本中调用操作助手,除非您不使用任何调度挂钩。但如果你真的、真的想要调用你的动作助手:

$helper = Zend_Controller_Action_HelperBroker::getStaticHelper('Myhelper');

I have a custom controller action helper that I would like to be able to call from a view script. How can I achieve this?

Solution:

Warning: You probably don't really want to call an action helper from your view script unless you aren't using any dispatch hooks. But if you really, really want to call your action helper:

$helper = Zend_Controller_Action_HelperBroker::getStaticHelper('Myhelper');

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

挽清梦 2024-11-24 01:33:04

嗯,你不能,也不应该这就是 MVC。尝试解决此类问题应该是对您的设计的潜在警告。

但是,在某些情况下您可能需要实现类似的目标。

例如,flashMessenger() 操作助手旨在提供一种在请求之间共享消息的简单方法,但是它在视图中不可用,您需要手动将其传递到视图。我自己编写了一个包装器,可以用作视图助手。

因此,也许尝试更明确地说明您想要实现的目标,我们可以帮助您了解是否没有好的替代方案。

Afaik, you can't, and you should not that's MVC. Trying to solve such problem should be a potential warning on your design.

However, in some case you may need to achieve a similar thing.

For example, the flashMessenger() action helper aims to provide a simple way to share messages between requests, however it is not available in the view, you need to manually pass it to the view. I've myself written a wrapper to be able to use as a view helper.

So maybe try to be more explicit on what you're trying to achieve, and we may help you to know if there isn't a good alternative.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文