Бизнес-логика и средства отображения данных в Zend Framework - PullRequest
2 голосов
/ 10 ноября 2010

Я неохотно принял подход отображения данных для моего текущего проекта, но меня это немного смутило.

Бизнес-модель

У работника есть имя,набор рабочего времени и стоимость.

Модель данных

Работник состоит из типа труда и схемы работы (три разные таблицы).Стоимость работника рассчитывается на основе комбинации типа труда и схемы работы.

Моя проблема ...

Кажется, у меня есть две разные моделитот, который представляет бизнес-логику, и тот, который представляет структуру данных.Я понимал, что моя модель должна представлять бизнес-логику, но что происходит, когда я хочу вставить нового работника?Это делается с помощью формы с двумя раскрывающимися списками, рабочим шаблоном и стоимостью, идентификаторы которых не нужны для бизнес-модели.

Смущены?Я.

Ответы [ 2 ]

1 голос
/ 10 ноября 2010

Реальной поддержки моделей данных с Zend Framework не существует.Но weierophinney действительно хорошо показывает, как их можно реализовать.Другое очень хорошее описание: это .
Обычно модель представляет данные и включает логику.Модель данных - это независимый от бэкэнда способ записи / получения данных.Для модели и приложения не имеет значения, откуда поступают данные.Таким образом, хранилище данных можно обменять, не касаясь чего-либо еще.

0 голосов
/ 10 ноября 2010

Моделирование данных по умолчанию в Zend Framework (Zend_Db_Table), вероятно, не лучший выбор для объектно-ориентированного моделирования данных.

Попробуйте использовать ORM, такой как Doctrine (http://www.doctrine -project.org /), он позволяет создавать объектную модель домена и практически прозрачно сохранять ее в базе данных. Таким образом, вы можете объединить бизнес-модель и модель данных в отдельные классы.

...