无法通过填充mongoose来显示数据

时间:2017-10-03 16:46:57

标签: node.js mongoose

请帮助我,我想显示车辆(VehiclesDB)数据,使用来自mongoodb的Schema Partner(RentalDB)的精选CityName(namaKota)填充,使用NodeJs ..这里是我的代码

export class GetVehiclesbyKotaCommandHandler {
constructor(namaKota) {
    return new Promise((resolve, reject) => {
        VehiclesDB.find({"namaKota":namaKota}).populate({
            path: 'mitraId',
            model: 'RentalDB',
            select: 'namaKota'
        }).lean().then((dataVehicles)=>{
            if(dataVehicles !== null){
                resolve(dataVehicles);
            } else {
                reject (new NotFoundException('Couldn\'t find any Vehicles with id' + namaKota));
            }
        }).catch((errDataVehicles)=>{
            reject(new CanNotGetVehiclesException(errDataVehicles.message));
        });
    });
}

}

my Vehicles Collection Structure

My Partner(Mitra) Collection Structure

但我的回应是成功,不要显示任何东西

{
"success": true,
"status": 200,
"message": "Successfully get kendaraan by mitraId!",
"error_code": null,
"data": []

}

1 个答案:

答案 0 :(得分:0)

我将通过查看您的图片进行疯狂猜测(如果您使用模式编辑问题则更好),与您的Vehicle集合中mitraId字段的类型不匹配,{{1}在您的合作伙伴集合中。

前者是_id,后者是String。它们需要是相同的类型才能填充。