用于多级选项卡式界面的控制器,操作助手或视图助手

时间:2010-11-25 01:07:31

标签: zend-framework zend-view zend-controller

此问题与问题here有关,涉及处理选项卡式界面的最佳做法。它引用了一篇名为“为什么Zend框架Actionstack是邪恶的”的博客文章,其中概述了你应该使用partials并查看将被重用的元素的帮助器。这一点很好,直到元素必须处理一些输入,在这种情况下,视图助手不是答案。这是你使用动作助手的地方,Matthew Weier O'Phinney在他的博客文章“使用动作助手来实现可重用的小部件”中讨论了一个用例。

在阅读这些观点之后,我似乎对我界面的最佳行动方式感到困惑。该网站将包括三个主要标签,案例,员工和&部门。这些选项卡中的每一个都将遵循类似的布局,包括选择器/搜索表,(案例|员工|部门)摘要,然后是具有垂直选项卡菜单的另一个区域。除了显示的信息外,主选项卡将包含一些相同的垂直选项卡项。

问题是我如何围绕此界面构建视图,帮助器和控制器。我想有一个索引,案例,员工和部门控制员。创建一个动作助手,它将重用每个主要选项卡的视图,但使用请求数据来确定当前选择的(Case | Staff | Department)。使用各个选项卡控制器来处理对垂直选项卡内容的jQuery ajax请求,并将输出委托给将重用公共视图的视图助手。并且还使用单独的选项卡控制器来处理jQuery ajax crud操作。

这是最好的方法,还是有更好的方法?

1 个答案:

答案 0 :(得分:1)

我会为您的三个主要标签中的每一个创建单独的控制器。您描述的垂直选项卡将对应于这些控制器上的操作。

为了渲染所有这些导航标签 - 顶级和垂直 - 听起来像答案是...... Zend_Navigationmore info)。

您可以将所有结构化导航数据(可能是从INI文件或从XML文件或甚至从结构化数组中读取)放入单个Zend_Navigation容器中,然后呈现“活动”分支。