当前位置: 首页 > 知识库问答 >
问题:

如何使用mongoose从Mongo中的多个集合中获取数据

董嘉祯
2023-03-14

当数据存储在多个集合中时,如何显示配置文件的详细数据

尝试了此链接

 const profile = await userKushala
      .find({_id: '5cd407c741f9e7373f10362c'})
      .populate({
        path: 'settingId',
        populate : {
            path : 'specialty',
          populate : {
            path: 'hospital_attached'
          }
        }
      })
const userRegisterSchema = new Schema({
userType: {
    type: String,
    required: true
},
mobile: {
    type: Number,
    required: true,
    unique: true
},
userId: {
    type: String,
    required: true
},
name: {
    type: String,
    required: true
},
email: {
    type: String,
    required: true
},
age: {
    type: Number,
    required: true
},
gender: {
    type: String,
    required: true
},
settingId: {
    type: mongoose.Schema.Types.ObjectId,
    ref: 'providerSetting'
}
})
const serviceProfileUpdate = new Schema({
   specialty :[{
    type: mongoose.Schema.Types.ObjectId,
    ref: 'specialtyMasterCsv'
}],
category: [{
    type: mongoose.Schema.Types.ObjectId,
    ref: 'categoryMasterCsv'
}],
subscriptionPlan: {
    type: mongoose.Schema.Types.ObjectId,
    ref: 'planMasterCsv'
},
medicine: {
    type : mongoose.Schema.Types.ObjectId,
    ref: 'kushalaUser' 
}
})
{  
   "_id":{  
      "$oid":"5cd93ea6bd96e43664f49bf3"
   },
   "specialty":[  
      {  
         "$oid":"5cda85f26ffe60259a75ba17"
      },
      {  
         "$oid":"5cda85f26ffe60259a75ba18"
      }
   ],
   "category":[  
      {  
         "$oid":"5cda85f26ffe60259a75ba17"
      },
      {  
         "$oid":"5cda85f26ffe60259a75ba18"
      }
   ],
   "subscriptionPlan":{  
      "$oid":"5cda85f26ffe60259a75ba17"
   },
   "medicine":{  
      "$oid":"5cd407c741f9e7373f10362c"
   },
   "__v":{  
      "$numberInt":"0"
   }
}

预期的结果将来自数据应该获取的所有集合,但使用我的代码,它给出的结果直到specialty,但在此之后,它只打印ObjectID

共有1个答案

淳于凯
2023-03-14

这就是我所做的,如果有人有更好的解决方案,它仍然有效,非常欢迎。希望能帮到别人。

const profile = await userKushala
      .find({_id: '5cd407c741f9e7373f10362c'})
      .populate({
        path: 'settingId',
        populate : {
            path : 'specialty category subscriptionPlan medicine'
            }
      }) 
 类似资料:
  • 几个月前我已经开始使用spring和mongodb。到目前为止,我还不知道如何使用Mongotemplate或MongoRepository从多个集合中提取数据。我有两个集合的人和联系人。现在我想获取客户列表和联系人。Customer的id是IS_ID,而Contact的关系id是customerId,所以我如何获得数据的Customer联系人详细信息。

  • 我需要从用户的所有帖子中获得喜欢字段的总数 这里是模式 用户模式 发布架构 我是新来的猫鼬,提前感谢...

  • 我使用的是Vue.js和Firebase FiRecovery。现在我有两个集合和。在订单集合中,我已经存储了集合的每个文档的id。我现在必须从中获取相应用户的详细信息。我应该怎么做?这是我迄今为止所做的 我需要在userInfo中存储用户数据。提前谢谢

  • 大家好,这个问题有点傻,但我是编程新手。所以我一直在为我的大学项目开发一个产品管理系统,使用ejs、nodejs、express、mongoose、MongoDB。所以我不知道如何获得类别标题而不是Objectid。我尝试使用,但它为空。 在此输入图像说明 }); 常量Issue=mongoose.model(“Issue”,issueSchema); 模数.出口=发行; 在这里,我有嵌入式产品集

  • 如何使用Spring FirestoreReactiveRepository从子集合中获取文档? 问题是:如何动态地将子集合名称或路径指定给@Document annotation? 我的firestore系列:(城市是一级系列,公寓是本系列的子系列) 波乔市 POJO公寓是: 从城市收集中获取数据的CityRepository 调用findById(nyc)时,公寓返回空值。我想在城市对象中填充

  • 问题内容: 我想在Cloud Firestore中定义这两个集合。一些示例数据如下所示: 播放清单: 名称:“ playlist1” songCount://要实时计算 歌曲: 标题:“ song1” playlistId:“ playlist1” 标题:“ song2” playlistId:“ playlist1” 标题:“ song3” playlistId:“ playlist1” 此外,