egg-sequelize 不会自动同步表,使用查询语句时表还没建立。
 发布于 8 年前  作者 FlyerJay  7813 次预览  最后一次回复是 8 年前  来自 问答 

请问在egg中怎么处理这个问题,是自己写一个类似plugin的东西来处理呢,还是egg本来就有相应的配置

7 回复
MUHM
// app.js
module.exports = app => {
  app.beforeStart(async function () {
    // 应用会等待这个函数执行完成才启动
    app.model.sync()
  });
};
FlyerJay

@MUHM 谢啦,解决啦

atian25

app.model.sync() 是 promise 而不是同步方法,要加上 await

http://docs.sequelizejs.com/en/latest/api/sequelize/#sync

// app.js
module.exports = app => {
  app.beforeStart(async function () {
    // 应用会等待这个函数执行完成才启动
    await app.model.sync()
  });
};
atian25

这里还可以简化下

// app.js
module.exports = app => {
  app.beforeStart(app.model.sync);
};