我想问问是否可以在sequelize-cli中使用基于promise的配置。 因此,其背后的想法是我的配置文件位于AWS S3中,但其格式没有与sequelize的配置文件匹配(我必须在代码中对其进行重新格式化)
我在文档中没有找到任何内容。 http://docs.sequelizejs.com/manual/tutorial/migrations.html#dynamic-configuration。他们说可以使用js文件,但是js文件可以先从S3下载配置文件吗?
谢谢!
答案 0 :(得分:0)
TL; DR可以在config.js
中导出承诺,该承诺返回配置对象。例如:
module.exports = somePromise().then(data => {
....,
production: {
username: data.user,
password: data.password,
database: data.db,
host: data.host,
dialect: 'mysql',
},
})
经过广泛研究,我发现config.js
实际上可以处理承诺。
因此,要使其正常工作,您需要在根文件夹(使用sequelize的位置)中提供.sequelizerc
文件并将其复制到文件中
const path = require('path');
module.exports = {
'config': path.resolve('config', 'config.js')
}
然后,创建一个config.js
文件。这些步骤记录在http://docs.sequelizejs.com/manual/tutorial/migrations.html#dynamic-configuration
下一步是在config.js
中使用promise。我在sequelize github问题跟踪器上找到了答案,并发现了这个问题:https://github.com/sequelize/cli/issues/668