sequelize为查询结果的dataValues中的列'id'返回null。

时间:2017-07-13 12:26:44

标签: mysql node.js typescript sequelize.js

我正在将sequelize与我的nodejs打字稿应用程序结合使用,并面临以下问题。我创建了一个名为OrmMapper的类,它负责创建我的表。我创建了一个名为“PCS”的表,并使用以下代码对其进行初始化:

    PCS.init({
      id: {
        primaryKey : true,
        autoIncrement: true,
        type: DataTypes.INTEGER
      },
      owner : DataTypes.INTEGER,
      created: DataTypes.DATE,
      year : DataTypes.STRING
    }, {sequelize});

生成的DDL很好,每当我运行这段代码时就会出现问题:

handleGetByOwner(request: TrackerRequest, res:Response):void{
  this.pcsModel.findAll({where:{owner: request.queryParams.ownerId}}).then((dataPackage:any)=>{
  let PCSS = [];
  console.log(dataPackage);
  for(let pcs of dataPackage){
    PCSS.push(pcs.dataValues);
  }
  res.status(200).send(new TrackerResponse({success: true, payload: PCSS, timeStamp: new Date()}));
});
}

生成以下SQL:

SELECT `id`, `owner`, `created`, `year`, `createdAt`, `updatedAt` FROM `PCs` AS `PCS` WHERE `PCS`.`owner` = '1';

当我查看我的数据库时,插入的所有数据都是正确的,当我执行上面的SQL语句时一切正常。但是当我运行上面的服务器代码时,我的查询结果是:

queryresult

所有数据值都是正确的,期望id为null。

0 个答案:

没有答案