0

所以,作为一个整体,我对 Zend 2 和 MVC 还很陌生,而且我发现自己处于一个想要遵循最佳实践以使我的代码可重用且易于理解的情况。

我要处理的特定场景如下。假设我正在编写一个编辑应用程序,用户可以在其中发送文章,但在发布之前需要获得批准。当您访问一篇文章 /article/view/101 时,您会看到一个页面,其中一侧包含文章信息(状态、作者、日期、标题、正文),并且在侧边栏上您会看到一组操作。

操作集(链接)会根据查看文章的用户类型(访客、用户、审阅者或管理员)以及文章的状态(草稿、完成、已发布)而变化

所以问题是:在 MVC 模型上,我应该将业务逻辑放在哪里来决定将哪些操作(链接)放在侧边栏上?

  • 控制器似乎不合适,因为我将在那里添加业务逻辑,并添加 HTML(坏 + 坏)
  • 该视图也不起作用,因为我将添加业务逻辑。
  • 一项服务似乎也不起作用,因为我似乎要么添加 HTML,要么从那里调用部分,而且也不应该这样做......

我唯一能想到的就是在服务或助手中执行业务逻辑(因为需要多个模型,文章和用户)并返回一个“数组”动作(没有 HTML)。然后视图处理这些以实际获取 HTML,但我不确定这是否是这样做的方法,并且需要一些有经验的输入。

4

0 回答 0