Задать вопрос
@MIKEk8

Теоретический вопрос о правильном коде. Как в рамках MVC правильно реализовать метод ("не action") в контроллере?

В контроллере есть метод, который реализует большой функционал используемый в экшенах этого контроллера. (обмен данными между некоторыми произвольными моделями).
Ни к какой конкретной модели этот функционал логично не вписывается.
По логике (на мой взгляд) он является частью контроллера.
Правильно ли этот оставлять этот код в контроллере или лучше куда-то вынести?

Суть терзаний:
С одной стороны он вроде находится на своём месте, но с другой стороны он занимает большую часть контроллера, да и в принципе ведь лучше чтобы контроллер содержал только доступные из вне методы(экшены)?
  • Вопрос задан
  • 105 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
Создайте сервис и вынесите туда "обмен данными между некоторыми произвольными моделями".
Назовите его так чтобы было ясно что за обмен происходит и используйте в контроллере.
Ответ написан
Комментировать
Bandicoot
@Bandicoot
Вась-программист
Все методы контроллера что не экшены - смело переносите в хелперы, там им самое место.
Разве что вспомогательные методы типа findModel можно оставить.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы