Все рассказывали вам о фреймворке MVC и о том, что он является отраслевым стандартом, позвольте мне использовать самый простой язык, чтобы объяснить его основы, чтобы вы могли написать свое первое приложение MVC в MEAN.

Вы, должно быть, слышали эту аббревиатуру M.V.C слишком много раз, что она означает? MVC означает модель, представление, контроллер. Теперь причина использовать MVC - отделить логику от базы данных и безопасности. Мы не хотим, чтобы наш интерфейс напрямую попадал в базу данных, потому что это открыло бы нашу базу данных каждому клиенту, использующему наше приложение. Чтобы избежать этого, мы вводим промежуточное программное обеспечение, называемое Контроллером, для взаимодействия с БД, также известной как Модель, и отправляем ответ в Представление.

МОДЕЛЬ

Это обрабатывает все аспекты приложения, связанные с данными. Это необходимо для получения информации / данных из базы данных, которые затем будут обрабатываться представлениями и контроллерами.

КОНТРОЛЛЕР

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

ПРОСМОТР

View - это не что иное, как красивый пользовательский интерфейс, который вы видите во внешнем интерфейсе.

Это был обзор того, что такое MVC. Продвигаясь вперед с нашим последним постом (см. Это для справки), у нас уже есть приложение, теперь мы поместим наше приложение в структуру MVC.

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

Маршруты будут иметь только объявление конечной точки API, которая будет передавать поток управления вашим контроллерам. Контроллеры будут разговаривать с моделью для получения информации. Как только информация получена, она отправляет обработанную информацию обратно запрашивающей стороне.

Модели сделаны общими и основаны на имени таблицы / коллекции в зависимости от вашей базы данных. Это дает нам возможность добавить новую таблицу / коллекцию, просто скопировав файл модели и переименовав его. Например,

Вышеупомянутая модель будет выполнять все основные операции с определенной таблицей. Чтобы добавить новую таблицу, скопируйте этот файл, переименуйте его и измените переменную tablename в строке 1, и у вас будут все основные операции для новой таблицы.

ПРЕИМУЩЕСТВА

  • Это делает ваше приложение более надежным.
  • В сценарии, когда вы решаете изменить базу данных по какой-либо причине, все, что вам нужно заменить, - это папку моделей с папкой новых моделей, которая будет обрабатывать новую базу данных, не затрагивая логику.
  • Это также позволяет разделить логику и данные, чтобы независимо управлять каждым компонентом.
  • У нас есть отдельный файл подключения для подключения к базе данных, в случае изменения вашей базы данных, но запрос останется таким же, например, с postgres на mysql, тогда все, что вам нужно изменить, это способ подключения к базе данных, остальное остается таким же.
  • В db_config.json есть еще один файл, который используется, если мы хотим изменить расположение базы данных.

Это делает ваше приложение дальнозорким.