亲爱的我有以下查询来自Sequelize

 models.ProviderZoneCity.findAll({

         attributes: ['zoneId'],
         raw : true
         ,
         where : {
          status : 1
          }
         })


返回的数据显示为

"providerHasZones":[{"zoneId":1},{"zoneId":2},{"zoneId":3}]


我需要的是以下结构

"providerHasZones":[1,2,3]


所以它将是一个id的数组而不是对象的数组,我试过了(raw:true)但没有任何改变:(

有什么建议吗?

最佳答案

您可以使用array map转换结果,例如

models.ProviderZoneCity.findAll({
     attributes: ['zoneId'],
     raw: true,
     where: {
       status: 1
     }
}).then(function(data) {
    return data.map(zone => zone.zoneId);
});

10-06 11:30