【问题标题】:Zend Framework - How to implement partials which contain logicZend Framework - 如何实现包含逻辑的部分
【发布时间】:2010-09-04 02:18:57
【问题描述】:

我有一个工作正常的布局。此布局包含几个部分,显示广告、侧栏、幻灯片等。所有这些都可能会根据您所在网站的页面(模块/控制器/操作)而改变。

正确执行此操作的最佳方法是什么?过去,我已将变量分配给我的控制器内的视图,然后将这些变量传递给部分,然后显示正确的幻灯片或广告。对于 MVC 应用程序来说,这看起来很丑陋且不完全正确。

有没有其他方法可以做到这一点?

【问题讨论】:

  • 您是否对每个操作都有完全不同的广告/幻灯片,或者您只是希望在某些情况下能够覆盖默认值?
  • 每个幻灯片/广告的底层 HTML 都是相同的。但是发送的内容会有所不同,例如不同的图片网址,链接网址。但是对于侧栏,内容可能完全不同,例如对于一个控制器,它可以包含一个朋友列表,或者另一个控制器,一个通知列表,对于另一个控制器,它可以包含一个登录表单。

标签: zend-framework partial


【解决方案1】:

部分只是另一个视图脚本。

我的建议是:将您的逻辑放入视图脚本中。您可以将逻辑存储在:

  • 模型(请记住,您可以创建自己的模型、扩展或不扩展基本数据库模型,例如数据水合器)
  • 查看助手(带参数)
  • 服务(取决于模型,返回模型)
  • 以上组合

然后使用视图助手或将准备好的数据(模型)传递给不同的部分。

提示:依赖注入是个好东西。

【讨论】:

  • 所有优点。 View Helpers 听起来是目前最适合我的方法
猜你喜欢
  • 2021-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-25
  • 1970-01-01
相关资源
最近更新 更多