Зависит от того, что вы подразумеваете под бизнес-логикой. Любая «логика», которая придает смысл содержанию модели, должна быть в модели. В связанном вопросе ответ с наибольшим количеством голосов, кажется, определяет «бизнес-логику» как что-либо, касающееся данных; это имеет смысл с точки зрения того, что данные бизнеса - это его бизнес!
Однажды я увидел пример создателя Rails (я думаю), который продолжал заниматься именно этим - не вкладывая в модель «бизнес-логику». Его примером был класс контроллера и метод для регистрации приложения и входа в систему - предоставленный пароль в виде открытого текста был зашифрован перед вставкой или запросом к модели (базе данных).
Я не могу придумать лучшего примера чего-то, что не является логикой контроллера и принадлежит непосредственно модели.
Модель могла бы быть интерфейсом к множеству хранилищ данных, облегчая проблемы переносимости. Именно здесь можно найти путаницу по поводу того, является ли интерфейс модели «контроллером».
Вообще говоря, контроллер связывает модель и представление (которые являются основным элементом приложения). В разработке Какао это может быть упрощено до точки, где контроллер обрабатывается через графический интерфейс XCode (объекты контроллера и привязки.)
Раздел GoF «Шаблоны проектирования» на MVC, в общих чертах:
Триада классов MVC используется для создания пользовательских интерфейсов в Smalltalk-80. Модель - это объект приложения, представление - это экранное представление, а контроллер определяет, как пользовательский интерфейс реагирует на ввод данных пользователем. MVC разделяет представления и модели, устанавливая между ними протокол подписки / уведомления. Следующая диаграмма показывает модель и три вида. Мы упустили контроллеры для простоты.
MVC это все о пользовательских интерфейсах. Основное внимание уделяется модели и представлению - определение и отображение данных. Обратите внимание на «протокол подписки / уведомления» - сюда входит ваш контроллер. Вы можете создавать все представления, которые вам нужны; до тех пор, пока они придерживаются протокола, вам никогда не придется прикасаться к модели или контроллеру.
Если вы говорите конкретно о веб-разработке, IMHO, многие популярные веб-фреймворки бывают быстрыми и свободными с термином MVC и определениями его компонентов.