如何在Mongoose中运行SlaveOk?

时间:2011-12-03 00:27:30

标签: mongodb node.js mongoose slave

如何在Mongoose中调用SlaveOK?

例如,我有这个:

SiteModel.find({}, function(err, docs) { .... } );

我应该这样做吗?

SiteModel.slaveOK().find({}, function(err,docs) { ... } );

2 个答案:

答案 0 :(得分:6)

mongoose.Query.slaveOk已被弃用,转而使用mongoose.Query.read(readPreference)docs

所以,要迭代上面的例子:

Model
.where('age').gte(25)
.where('tags').in(['movie', 'music', 'art'])
.select('name', 'age', 'tags')
.skip(20)
.limit(10)
.asc('age')
.read('secondaryPreferred')
.hint({ age: 1, name: 1 })
.run(callback);

答案 1 :(得分:3)

以下是Mongoose.js网站的官方示例:

Model
.where('age').gte(25)
.where('tags').in(['movie', 'music', 'art'])
.select('name', 'age', 'tags')
.skip(20)
.limit(10)
.asc('age')
.slaveOk()
.hint({ age: 1, name: 1 })
.run(callback);

所以我猜你上面的例子可能有用,但是这样做:

Model.find(conditions).slaveOk().run(callback);