1

我有以下查询,其中oids是对象 id 的数组。

users.find({ _id: { $in: oids } }, function(err, result){
    console.log(result);
}); 

我希望用户的 id 位于对象 id 数组中的用户列表,但实际结果如下所示:

{ db: { databaseName: 'users', serverConfig: { _callBackStore: [Object], host: 'localhost', port: 27017, options: [Object], internalMaster: true, connected: true, poolSize: 5, disableDriverBSONSizeCheck: false, slaveOk: undefined, _used: true, replicasetInstance: null, ssl: false, sslValidate: false, sslCA: null, sslCert: undefined, sslKey: undefined, sslPass: undefined, _readPreference: null, socketOptions: [Object], logger: [Object], eventHandlers: [Object], _serverState: 'connected', _state: [Object], recordQueryStats: false, db: [Circular], dbInstances: [Object], connectionPool: [Object], isMasterDoc: [Object] }, options: { w: 1 }, _applicationClosed: false, native_parser: undefined, bsonLib: { Code: [Function: Code], Symbol: [Function: Symbol], BSON: [Object], DBRef: [Function: DBRef], Binary: [Object], ObjectID: [Object], Long: [Object], Timestamp: [Object], Double: [Function: Double], MinKey: [Function: MinKey], MaxKey: [Function: MaxKey] }, bson: {} ... and so on ...

如果我使用user.findOne(...)结果是预期的用户,但我喜欢查询数组中的所有用户。

4

1 回答 1

1

find() 方法返回一个游标,因此“结果”正在打印所有游标详细信息。我想你必须做类似的事情:

collection.find().toArray(function(err, results) {
     test.assertEquals(1, results.length);
});
于 2013-05-10T00:15:30.590 回答