Model view controller web应用程序的MVC模式-如何处理检索和操作模型列表?

Model view controller web应用程序的MVC模式-如何处理检索和操作模型列表?,model-view-controller,web-applications,Model View Controller,Web Applications,我正在开发一个web应用程序,并且正在实现我自己的MVC体系结构。我已经设置了基本模型、视图和控制器类并开始工作。这些工具对于显示或操作单个对象非常有用 但是,我遇到了如何显示(和操作)这些对象的列表的问题 为了简单起见,假设我有一个Model\u Event模型,它包含关于事件的属性,如id、name和date。我想列出数据库中的所有事件 我应该有一个独立于控制器事件的控制器,称为控制器事件列表,我应该有一个单独的模型模型事件列表,它填充并包含一组模型事件对象吗 或者我应该使用用于单个事件对象

我正在开发一个web应用程序,并且正在实现我自己的MVC体系结构。我已经设置了基本模型、视图和控制器类并开始工作。这些工具对于显示或操作单个对象非常有用

但是,我遇到了如何显示(和操作)这些对象的列表的问题

为了简单起见,假设我有一个
Model\u Event
模型,它包含关于事件的属性,如
id
name
date
。我想列出数据库中的所有事件

我应该有一个独立于
控制器事件
的控制器,称为
控制器事件列表
,我应该有一个单独的模型
模型事件列表
,它填充并包含一组
模型事件
对象吗


或者我应该使用用于单个事件对象的同一个控制器,并且在
Model\u event
中有一个返回要显示的事件数据数组的方法吗?

决定是否使用一个或多个控制器是特定于应用程序的,您应该问问自己,在客户端/用户界面便利性和服务器端代码重用/删除方面,哪个更适合您的应用程序需要

由于您可以将单个结果视为列表的特殊情况,所以始终可以将列表用作唯一贯穿代码的抽象。此外,您的控制器下面应该已经有了一个服务层,用于从DB中实际提取对象,这也受相同设计选择的约束

我可能喜欢单服务、多控制器解决方案,但这实际上取决于应用程序特定的细节(导航规则、用例等等)