У меня есть приложение Express с Sequelize в качестве ORM и PostgreSQL в качестве базы данных. База данных настраивается таким образом, чтобы у всех арендаторов в моем приложении были разные схемы. Миграционные файлы, которые существуют в моем приложении, содержат миграции addColumn / removeColumn. Но когда я запускаю команду npx sequelize-cli db: migrate, я получаю следующую ошибку.
ОШИБКА: отношение "publi c .table_name" не существует
Вышеуказанная ошибка выбрасывает только для файлов миграции, которые содержат миграции addColumn / removeColumn. Также я нигде не ссылаюсь на схему publi c (даже удалил схему publi c из db). Есть ли способ запустить миграцию для определенной схемы (скажем, test_schema) в Sequelize без жесткого кодирования имени схемы в файлах миграции?
Обновление # 2
'use strict';
module.exports = {
up: async(queryInterface, Sequelize) => {
try {
await queryInterface.addColumn('table_name', 'new_field_name', {
type: Sequelize.INTEGER
});
return Promise.resolve();
} catch (e) {
return Promise.reject(e);
}
},
down: async(queryInterface, Sequelize) => {
try {
await queryInterface.removeColumn('table_name','new_field_name');
return Promise.resolve();
} catch (e) {
return Promise.reject(e);
}
}
};
Выше приведен код для миграции addColumn.