readPreference无法在Mongoose中运行

时间:2015-11-03 12:47:11

标签: mongodb mongoose

我正在使用以下代码段通过Mongoose连接到MongoDB

var conn = mongoose.createConnection('mongodb://user:pass@IP:port/testDB',
{
    auth: {authdb: "admin"},
    server: {
        readPreference: "secondary",
        strategy: "ping"
    },
    "db": {
        "readPreference": "secondary",
        "read_preference" : "secondary"
    },
    replset: {
        rs_name : "rs1",
        readPreference: 'secondary'
    }
}
);

但是readPreference似乎不起作用。

注意:当我通过Mongo shell直接从辅助查询时,数据不存在。仅在主数据中可用。但通过Mongoose,数据出来了。

有人可以帮忙,还是我做错了什么?

1 个答案:

答案 0 :(得分:0)

你试过这个:

var schema = new Schema({..}, { read: 'secondary' });

从连接中,您可以设置

replset: { strategy: 'ping', read: 'secondary' }

经过反复试验,似乎无法强迫Mongoose从中学或初级读书。我在谷歌小组询问了作者,我们会看到。 我的Mongoose版本是4.2.4