Действительно ли необходимы миграции в NodeJS Sequelize? - PullRequest
0 голосов
/ 01 марта 2020

В Sequelize, когда мы создаем модель с помощью следующей команды,

sequelize model:generate --name Company --attributes name:string, desc:text

Файл миграции также создается. И мы можем сделать синхронизацию моделей c с БД, добавив следующий фрагмент кода.

models.sequelize.sync().then(() => {
    console.log("DB Synced");
}).catch((error) => {
    console.log(error);
});

Поэтому при изменении имен столбцов или чего-либо другого они синхронизируются с БД.

Итак, нам действительно нужно запустить миграцию? На каком-либо этапе разработки или производства?

Пожалуйста, исправьте меня, если я ошибаюсь.

1 Ответ

0 голосов
/ 01 марта 2020

Я настоятельно рекомендую использовать явные миграции и указывать таблицы для хранения примененных миграций и начальных значений в конфигурации sequelize, если у вас разные версии базы данных в разных производственных средах (даже если вы просто планируете разные производственные развертывания). Если вы запускаете более новую версию своего приложения с некоторыми изменениями модели в более старой производственной БД, то, выполнив метод syn c, вы случайно меняете эту производственную БД. Более того, вы не можете легко отменить эти изменения, потому что вы ничего не знаете о различиях между моделями в вашем текущем приложении и таблицами в рабочей БД.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...