Иногда помогает думать о MVC с точки зрения зависимостей.
Модель повторяет то, что делает ваше приложение.Это не зависит ни от чего.Это то, что делает ваше приложение уникальным.
Представление отображает информацию для пользователя.Эта информация поступает из модели.Следовательно, представление зависит от модели.
Функция контроллера состоит в том, чтобы принимать входные данные от пользователя, отправлять этот запрос в соответствующие функциональные возможности модели и (обычно) принимать возвращаемое значение и предоставлять его длявид для рендеринга.Таким образом, контроллер обычно очень тесно связан с видом (ами), которые он обслуживает.Он также зависит от модели.
В этом случае модель является вашей схемой аутентификации.(На самом деле, это не столько модель, сколько точка входа в ваше приложение, ваша общая модель - это что-то вроде «обработка платежей», «генерация отчета», «запрос на создание виджета» и т. Д.)
У вас есть два представления: одно для ввода информации об аутентификации, а второе - для успешного прохождения аутентификации.Первый действительно не имеет никакой информации о модели, он предназначен исключительно для сбора входных данных (однако его дизайн будет основан на том, что требуется модели аутентификации, поэтому здесь все еще существует зависимость).Второй, несомненно, будет отображать список доступных функций, предлагаемых вашим приложением, или целевую страницу и т. Д.
Контроллер несет ответственность за посредничество в этих взаимодействиях.Следовательно, информация, отправленная из первого представления, принимается контроллером, отправляется в модель аутентификации, аутентификация проходит успешно или не проходит, а затем контроллер выбирает соответствующее представление для визуализации на основе результата.