Как запустить SlaveOk в Mongoose? - PullRequest
0 голосов
/ 03 декабря 2011

Как позвонить в SlaveOK по запросу в Mongoose?

например, у меня есть это:

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

Должен ли я сделать это ???

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

Ответы [ 2 ]

7 голосов
/ 12 июня 2014

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);
3 голосов
/ 07 декабря 2011

Вот официальный пример с веб-сайта 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);
...