如何避免自动_id所以它只生成1个Id

时间:2017-09-20 15:30:19

标签: node.js mongodb mongoose

这是架构:

var RdvSchema = new Schema({
  _idRdv: Schema.Types.ObjectId,
  patient:{type: Schema.Types.Mixed, ref:'Patient'} ,
  pro: {type: Schema.Types.Mixed, ref:'Pro'},
  motif: {type: Schema.Types.Mixed, ref: 'Pro'},
  domicile:{type: Schema.Types.Mixed, ref: 'Pro'},
 }

以下是数据:

var rdv1 = new Rdv({
  _idRdv: new mongoose.Types.ObjectId(),
  patient: patient1.name,
  pro: pro1.name,
  motif: pro1.Consultation.Motif,
  domicile: pro1.Consultation.Domicile
});

这是shell:

MongoDB Enterprise > db.rdvs.find().pretty()
{
    "_id" : ObjectId("59c28817f81e91061044ddc7"),
    "_idRdv" : ObjectId("59c28817f81e91061044ddc6"),
    "patient" : "Maxime",
    "pro" : "Ben",
    "domicile" : true,
    "__v" : 0

如何防止这种情况:“_ id”:ObjectId(“59c28817f81e91061044ddc7”)发生了什么?

1 个答案:

答案 0 :(得分:2)

" _id"是任何mongodb文档的唯一标识符。您无法使其无法在文档中生成。

但您可以在find的输出中删除它,如下所示:

db.rdvs.find({}, {'_id': False}).pretty()