首页 文章

为什么koa-router发送404?

提问于
浏览
2

我正在使用koa-router,koa-views和sequelize . 数据来自数据库,但状态= 404.我做错了什么?

router.get('/', function *() {
  var ctx = this;

  yield models.drivers.findAll({
    where: {
      userId: ctx.passport.user.id
    }
  }).then(function(drivers) {
    ctx.render('driversSearch', {
      drivers: drivers
    });
  });
});

1 回答

  • 2

    看起来你没有利用Koa的协同功能 . 您的代码可以像这样重写:

    router.get('/', function *() {
      var drivers = yield models.drivers.findAll({
        where: {
          userId: this.passport.user.id
        }
      });
    
      this.render('driversSearch', {
        drivers: drivers
      });
    });
    

    Koa在引擎盖下使用the co library . 如果您产生一个承诺,生成器函数将暂停,然后在履行承诺时恢复 .

相关问题