【发布时间】:2010-03-05 19:49:38
【问题描述】:
我正在为我们的应用程序创建一个显示对象库。它们在各种视图中呈现许多常见对象(用户、对话、消息等)的 html。通过视图,我的意思是对象可以使用不同的标记返回自身的不同“缩放级别”。
一些显示对象包含其他要渲染的显示对象,例如。用户列表对象在特定视图中呈现用户对象(此特定视图将它们吐回到列表项中,以便它们适合列表)
我正在尝试将这些转移到 ZF 中的正确处理方式中,但我无法决定这些是否应该都是视图助手,或者它们是否都是视图脚本/部分。
只是让他们查看脚本并使用 ->render() 进行渲染似乎有点脏,因为我想传递给他们的任何信息或参数都必须分配给视图对象。
Partials 似乎更正确一些,除了不确定是否适合在这些中执行显示逻辑(如果“showNotificationStatus”作为参数传递,则呈现此跨度)。或者,如果它的局部用于呈现其他局部(呈现用户对象的用户列表)。
视图助手似乎可能是正确的方法,但我不知道这是否过度使用视图助手。每个对象都可以是一个视图助手并接受一个 objectview 参数,因此它知道要在哪个缩放级别/容器中呈现自己,或者每个 objectview 甚至可以是它自己的助手(因此对象内没有大的 switch 语句)。视图的一个好处是您可以传递参数,并且如果您需要该级别的某些内容,它仍然可以访问视图上下文。
其中大多数将接受模型,其中一些需要一些额外的参数才能知道要做什么(例如上面的 showNotificationStatus)。什么是合适的工具?
【问题讨论】:
标签: php zend-framework