5

我有一个猫鼬模式如下

var user_schema = new Schema({
    reset : { type: Schema.Types.Mixed, required: true }
});

其中 reset 被赋予了一个像这样的对象来存储在数据库中

{
    id: 23,
    name: 'something'
}

我想根据重置对象中的 id 查找文档。这是我尝试过的,但我从未得到返回结果。

models.Users.findOne({ 'reset.id': id }, function (err, user) {
    // user is null 
});

猫鼬可以进行这样的查找吗?

4

1 回答 1

7

我认为您遇到的问题是使用混合模式类型。

你能不能使用嵌入式文档Reset

var reset_schema = new Schema({
    id        : Int,
    name      : String
});

var user_schema = new Schema({
    name      : String,
    reset     : reset_schema 
});

然后像这样查询:

models.Users.findOne({ 'reset.id': id }, function (err, user) {

});
于 2012-11-13T16:36:08.330 回答