Введение
Миграции - это система которая работает со структурой базы данных, а именно миграции хранят в себе структуру моделей, способны разворачиваться и расширяться. Миграции позволяют команде программистов изменять структуру БД, в то же время оставаясь в курсе изменений других участников.
Расширяя базу данных с помощью миграций, все изменения отражаются в коммитах и хранятся в системах контроля версий.
Файлы миграций находятся по пути: /app/migrations/
Например:
<? return [
'id' => '7ad26d1606a4d0ed1c7288420d15ece8',
'table' => 'block_catalog_categories',
'version' => '0d103a6e6935222db306c7e628f30290',
'moduleCode' => 'Catalog',
'blockCode' => 'Categories',
'date' => '2022-01-20 16:11',
'data' => ''
];
Миграции не нужно редактировать вручную, они обновляются автоматически при работе разработчика с панелью управления моделями.
Создание миграций
Миграции создаются автоматически с любыми операциями с моделями и модулями моделей которые влияют на расширение структуры.

Запуск миграций
Как только система видит новые версии миграций, она предложит их выполнить, причем чтобы пользоваться интерфейсом нужно либо выполнить миграцию, либо откатить версию миграций.
Чтобы понять как это работает, скачайте файл миграции mig_Bank_Accounts.php
И поместите файл в папку: /app/migrations/
- Откройте админ панель
- Перейдите в пункт меню (сверху) Разработчикам
- Откройте Динамические модули
- Появится уведомление:
Найдены обновленные файлы миграций. Необходимо запустить миграции, для синхронизации структуры модулей и базы данных.

Нажмите Запустить миграции

Произойдет запуск миграций.
После завершения, перезагрузите страницу админ панели и проверь слева папки модулей, там должна появиться папка Банк

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