Rails не обязательно строго MVC. В мире Rails контроллеры больше похожи на так называемые View-Controllers в шаблоне MVC.
Кроме того, я бы сказал, что в «чистом» MVC контроллеры должны , а не выполнять запросы к БД и бизнес-логику, которые должны быть инкапсулированы на уровне модели. Контроллеры предназначены для перемещения данных между представлением и моделью.
А как насчет создания вспомогательных методов для представления, форматирующего все, что вы вставляете во флэш-хэш? Флэш не должен содержать только строковые значения; он может содержать произвольные объекты. Я часто помещаю массив ошибок проверки модели в flash[:error]
и пишу вспомогательный метод для форматирования этих сообщений в <ul>
.