Сайт ↗
Разделы документации
Эксплуатация · 0.8.1

Generate: применение изменений и возврат модели

Что делает Generate, как решить конфликт файлов и как отменить изменения модели, которые ещё не сгенерированы.

На этой странице

После изменения модели нужно обновить файлы приложения. Для этого в Generator UI откройте Generate → Preview changes. Просмотрите изменения файлов, маршрутов API и настроек доступа. Если есть ошибки или конфликты, сначала исправьте их, затем нажмите Generate.

После успешной генерации новый код находится в проекте. Работающий сервер начнёт использовать его после перезапуска или выпуска нового релиза.

На каком этапе меняются файлы и данные

Действие Что оно меняет
Finish / Save в редакторе Описание модели
Preview changes Ничего не применяет; показывает будущие изменения
Generate Записывает исходники и новые миграции по плану
Применение миграций Изменяет БД
Build + deploy Собирает и запускает выбранную версию приложения

Если передумали менять модель

Нажмите Discard ungenerated changes, чтобы вернуть модель в .admingen/project.yaml к последнему успешному Generate. Перед подтверждением просмотрите diff — список изменений, которые будут отменены.

Действие возвращает только модель. Файлы generated и custom, история SQL-миграций, содержимое БД, .env и Git остаются как есть. Если нужно вернуть уже развёрнутое приложение, используйте подходящую процедуру: rollback кода или restore данных.

Если найден конфликт

Если вы вручную меняли файл, которым управляет генератор, Generate может сообщить о конфликте. Перенесите нужные доработки в custom-зону. Force overwrite разрешает перезаписать конкретный generated-файл, поэтому используйте его только после проверки того, что будет потеряно. Эта команда не исправляет ошибки модели и не отменяет необходимость проверить влияние изменений на данные.

Иногда файлы уже записаны, но интерфейс не смог показать результат. Сначала обновите состояние проекта и проверьте его. Ошибка обновления экрана сама по себе не означает, что нужно ещё раз нажать Generate.

Дополнительно: CLI

Те же действия доступны в терминале. Укажите путь к сгенерированному проекту; команда admingen должна быть доступна из текущего каталога:

admingen-cli --path /absolute/project plan
admingen-cli --path /absolute/project generate --dry-run
admingen-cli --path /absolute/project generate

Полный разбор интерфейса — Generate, запуск — make dev, обновление Docker-окружения — обновление релиза.