Шаблон MVC для веб-приложения - Как обрабатывать получение и манипулирование списками моделей? - PullRequest
0 голосов
/ 07 августа 2011

Я занимаюсь разработкой веб-приложения и реализую свою собственную архитектуру MVC.У меня есть базовые классы Model, View и Controller, настроенные и работающие.Они отлично подходят для отображения или управления отдельными объектами.

Однако я столкнулся с проблемой того, как отображать (и манипулировать) списки этих объектов.

Для простоты, скажем, яиметь модель Model_Event, которая содержит атрибуты о событии, такие как id, name и date.Я хочу перечислить все события в базе данных.

Должен ли я иметь отдельный контроллер от Controller_Event с именем Controller_Event_List, и должна ли я иметь отдельную модель Model_Event_List, которая заполняет и содержит массив Model_Event objects?

Или я должен использовать тот же контроллер, который я использую для отдельных объектов события, и просто иметь метод в Model_Event, который возвращает массив данных события для отображения?

1 Ответ

1 голос
/ 07 августа 2011

Решая, использовать ли один или несколько контроллеров, зависит от конкретного приложения, вы должны спросить себя, что лучше соответствует потребностям вашего приложения с точки зрения удобства интерфейса для клиентов / пользователей и повторного использования кода на стороне сервера / СУХОЙ.

Поскольку вы всегда можете рассматривать отдельные результаты как особый случай для списков, вы всегда можете использовать списки как единственную абстракцию для использования во всем коде. Более того, под вашими контроллерами уже должен быть сервисный уровень, который выполняет фактическую выборку объектов из БД, что также зависит от тех же вариантов проектирования.

Мой вкус, вероятно, будет для решения с одним сервисом и несколькими контроллерами, но это действительно зависит от конкретных деталей приложения (правила навигации, варианты использования, ...).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...