В приложении Symfony 2 мне нужен класс модели (без сохранения в базе данных) с функциями бизнес-логики, которые связаны с другими объектами (с сохранением).Как я могу привести бизнес-логику в класс модели Symfony, который связан с другими объектами?
В моей концептуальной модели есть "Номера", "Связи" и "Алгоритмы". Номера и соединения - это организации Symfony, основанные на доктрине. Алгоритмы должны быть классами моделей или объектами без сохранения в базе данных.
Бизнес-логика заключается в следующем: - Существуют различные виды алгоритмов. - Один алгоритм делает отношения между комнатами и соединениями в разных критериях. Это подразумевает получение комнат или подключений из базы данных, применение логики, изменение или создание новых объектов в базе данных.
Первый подход, который я сделал, - это фабрика алгоритмов как Symfony Service, чтобы предоставить объект для создания базы алгоритмов для параметра типа.
Контроллер вызывает эту службу и вызывает функцию алгоритма для применения логики.
Концептуальная проблема У меня следующие: Я не знаю, какой тип элемента Symfony должен быть классом алгоритма. Если это Entity, он не может получить номера или подключения из базы данных с помощью Doctrine Manager, не так ли? Должен ли это быть Контроллером как услуга с точки зрения Symfony?
У меня есть сомнения в том, как представить это в архитектуре Symfony.
Спасибо
Существует очень исчерпывающий ответ: http://stackoverflow.com/a/25533968/897301 –