【问题标题】:How to populate a group in mongoose如何在猫鼬中填充组
【发布时间】:2016-06-11 18:33:30
【问题描述】:

我的 mongoose 架构中有这个...和一些组...

'use strict';

var mongoose = require('mongoose')
, Schema = mongoose.Schema;

var clientSchema = new mongoose.Schema({

    name                                : { type: String },
    offerings                   : [{ type: String }],
    cscPersonnel                : {
        salesExec                   : { type: Schema.Types.ObjectId, ref: 'User' },
        accountGM                   : { type: Schema.Types.ObjectId, ref: 'User' },
},
    },
    netPromoterScore        : { type: Number }

});

module.exports = mongoose.model('clients', clientSchema);

我尝试填充 ref dis 方式...我也填充了 ref (user as {path:'cscPersonnel'})

function getOneById(id){
    var deferred = Q.defer();
console.log("im in get by id" +id);
    model
        .findOne({ _id: id })
        .populate({path:'cscPersonnel'})//one way
           /* 'cscPersonnel salesExec',   //second way
            'cscPersonnel accountGM', */
        .exec(function (err, item) {
            if(err) {
                console.log(err);
                deferred.reject(err);
            }
            else
                console.log(item);
                deferred.resolve(item);
        });

    return deferred.promise;
} // gentOneById method ends

但不幸的是出现了这个错误!!!!

CastError:在路径“_id”处为值“[object Object]”转换为 ObjectId 失败

{
  "message": "Cast to ObjectId failed for value \"[object Object]\" at path \"_id\"",
  "name": "CastError",
  "type": "ObjectId",
  "value": {
    "salesExec": "56cf5f09245f8a240b30693b",
    "accountGM": "56cf5f09245f8a240b30693b"
  },
  "path": "_id"
}

如何让它解决这个问题.... 请帮忙,在此先感谢

【问题讨论】:

    标签: javascript node.js mongoose-populate


    【解决方案1】:

    请试试这个

    model
        .findOne({ _id: id })
        .populate({path: 'cscPersonnel.salesExec'})
        .populate({path: 'cscPersonnel.accountGM'})
        .exec(function (err, item) {
    

    【讨论】:

    • @swatikiran,请针对您的新问题提出另一个问题。
    猜你喜欢
    • 2020-01-30
    • 2015-07-13
    • 2014-04-19
    • 1970-01-01
    • 2017-02-25
    • 2023-03-16
    • 1970-01-01
    • 2015-07-13
    • 2016-10-10
    相关资源
    最近更新 更多