Mongodb和Mongoose.js的新功能。

我创建了以下架构和模型:

var schema = new Schema({
    _id: {part1: String, part2: Number},
    name: String
    });
 mongoose.model('myDoc', schema);


我可以保存它,当我在mongo命令行上查看它时,看起来还不错。

但是在猫鼬中,当我这样做时:

myDoc.find({}, function(err, recs) {
var rec = recs[0];
console.log('----' + JSON.stringify(rec));
});


我将对象打印出来,但是有以下例外:Cast to ObjectId failed for value "[object Object]" at path "_id"

我已经看到了一些解释,但是我不明白自己在做错什么以及如何解决它。

根据mongodb文档,_id可以是bson类型。我究竟做错了什么? {part1:String,part2:Number}不是bson吗?

最佳答案

根据Mongoose作者的this post,Mongoose尚不支持复合_id字段。

关于node.js - MongoDB, Mongoose 和复合_id,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28665768/

10-09 18:22
查看更多