NodeJS和Mongoose与Mongodb切分问题

NodeJS和Mongoose与Mongodb切分问题,mongodb,node.js,mongoose,Mongodb,Node.js,Mongoose,我一直在使用NodeJS,MongooseJS和Mongodb。当我尝试使用mongooseJS在mongodb中插入记录时,它抛出了以下错误 "MongoError: right object doesn't have full shard key" 仅供参考:具有碎片键的MongoDB表 请告诉我如何解决这个问题!这个错误是什么意思?当您在Mongo集合中插入任何具有切分键的对象时,该对象应该具有所有切分键,即完整切分键 正如mongodb的医生所说: 所有非多重更新、追加和插入 必须包含

我一直在使用NodeJS,MongooseJS和Mongodb。当我尝试使用mongooseJS在mongodb中插入记录时,它抛出了以下错误

"MongoError: right object doesn't have full shard key"
仅供参考:具有碎片键的MongoDB表


请告诉我如何解决这个问题!这个错误是什么意思?

当您在Mongo集合中插入任何具有切分键的对象时,该对象应该具有所有切分键,即完整切分键

正如mongodb的医生所说:

所有非多重更新、追加和插入 必须包含当前碎片密钥


当前切分键,即当前适用的所有切分键。

Mongoose 2.5.3支持切分,只需在模式选项中包含切分键,其余由Mongoose完成

var LoginSchema = new Schema({attribut: String}, 
                             { shardkey: { at: 1, _user: 1 }}
                            )

插入的对象是切分键的一部分吗?这听起来像是你试图插入没有一个键,这也是一个碎片键。