MVC + ORM, генерация отчетов - PullRequest
       11

MVC + ORM, генерация отчетов

1 голос
/ 20 октября 2010

Я только начал использовать Zend Framework и Doctrine в качестве ORM, и у меня есть некоторые сомнения относительно модели. Очевидно, что целью ORM является просто сопоставить мою модель предметной области с моделью базы данных, но мне любопытно, как вы смоделируете различные отчеты, необходимые в веб-приложении?

С моей точки зрения, и поправьте меня, если я ошибаюсь, я должен избегать написания каких-либо запросов в контроллере (запросы языка Doctrine Query Language, в данном случае). Итак, если мне нужен какой-то произвольный отчет (например, доход по отделу с разбивкой по месяцам), должен ли я иметь специальную «службу» отчетности в домене? Этот сервис будет получать мой отчет из базы данных, используя запросы ORM.

Если бы вы могли пролить свет на эту тему, я был бы благодарен.

1 Ответ

1 голос
/ 20 октября 2010

Конечно, иногда DQL недостаточно. В Doctrine2 вы можете расширить его. Но Doctrine 1.x не глупа, и вы можете использовать собственный SQL с ним: http://www.doctrine -project.org / projects / orm / 1.2 / docs / manual / native-sql / en

Если ORM недостаточно, вы можете использовать собственный SQL. Отчетность - это тот случай, когда запросы SQL становятся слишком сложными для ЛЮБОГО простого QL, который вы можете изобразить. Так что ... я говорю пойти на нативные запросы, если вы не можете избежать этого. Но сохрани Доктрину для всего остального.

...