【问题标题】:How do I reference subdocument array's ObjectId to another model如何将子文档数组的 ObjectId 引用到另一个模型
【发布时间】:2018-06-07 17:50:39
【问题描述】:
usermodel:
{
"_id" : ObjectId("5a2622b0004be35f4baf70e3"),
"username": "testuser",
"bankdetails" : [ 
        {
            "_id" : ObjectId("5a294146015da72db1560326"),            
            "bankname" : "bankofamerica"
        }
]
}


samplemodel:
{
    "_id" : ObjectId("5a41f785416d0d3d93794ca9"),   
    "bankid" : ObjectId("5a294146015da72db1560326"),
}


samplemodel.find().populate('bankid').exec(function(err,resData){
    res.json(resData);
});

我已经使用了上面的代码,但没有使用这个代码......请给出一些解决方案来解决这个问题......

【问题讨论】:

  • 你能解释一下你在这里想要达到的目标吗?

标签: arrays mongodb mongoose objectid


【解决方案1】:

您必须更新架构,为银行创建单独的架构。并作为嵌入文档传递给“bankdetails”,要从示例模型中获取结果,您需要传递银行模式的参考。示例:

var BankSchema = new Schema({
   bankname:{ type: String}
});

var Bank = mongoose.model('Bank', BankSchema); 

var UserSchema = new Schema({
  username:{ type: String},
  bankdetails:[BankSchema],
});

var SampleSchema = new Schema({
  sameple_string:{ type: String},
    bankid:{
      type:mongoose.Schema.Types.ObjectId,
      ref:'Bank'
    },
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-22
    • 2014-09-11
    • 2021-02-25
    • 1970-01-01
    • 1970-01-01
    • 2018-08-02
    • 1970-01-01
    • 2020-12-26
    相关资源
    最近更新 更多