我在查询中试图访问_id
时遇到问题。
我的架构:
var testSchema = new Schema({
test2id: [{ type: Schema.Types.ObjectId, ref: 'Test2' }],
test3id: [{ type: Schema.Types.ObjectId, ref: 'Test3' }]
});
var test2Schema = new Schema({
name: String
});
var test3Schema = new Schema({
name: String
});
我的查询:
testSchema.statics.findByid = function (id, callback) {
var query = this.findOne();
Test2.findOne({'name': name}, function (error, t2) {
query.where({
test2id: _id,
}).exec(callback);
});
return query
};
_id
未定义,我也尝试this._id
但查询返回null。
我只想从testSchema
获取test2id = _id
文档testSchema
的所有文档。
是否有任何想法可以解决这个问题并从_id
条款访问query.where
?
答案 0 :(得分:0)
我最后通过在参数中传递它来解决它。
var test = new Test();
test.findByid(test._id, req.params.id, function(err, res) {
...
});