MongooseでSlaveokを実行する方法は?
質問
MongooseのクエリでSlaveokを呼び出す方法は?
たとえば、私はこれを持っています:
SiteModel.find({}, function(err, docs) { .... } );
私はこれをすべきですか?
SiteModel.slaveOK().find({}, function(err,docs) { ... } );
解決
Mongoose.jsのWebサイトの公式の例は次のとおりです。
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);
他のヒント
mongoose.Query.slaveOk
有利に非推奨されています mongoose.Query.read(readPreference)
. ドキュメント
したがって、上記の例を反復するには:
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);
所属していません StackOverflow