首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问mongoose中的嵌套字段

访问mongoose中的嵌套字段
EN

Stack Overflow用户
提问于 2020-07-03 15:02:00
回答 1查看 66关注 0票数 0

我定义了两个模式,一个是user,一个是doc。在文档架构中,我使用createdBy字段来引用用户架构

现在,当我想要显示文档架构中的所有记录时,我无法访问名称

我可以访问doc.education或doc.bio,但无法访问永久文档名称

以下是我尝试过的方法

代码语言:javascript
复制
  doc
    .find({})
    .populate({ path: "createdBy" })
    .exec((err, docs) => {
      if (!err) {
        console.log(docs);
      }
    });

我得到了这个结果

代码语言:javascript
复制
[
  {
    _id: 5efa9ab935f13d39b01f36e2,
    createdBy: {
      role: 'doctor',
      isVerified: false,
      _id: 5ef873fe544ef53874eaacfe,
      name: 'drsmira',
      email: 'drsmira@gmail.com',
      password: '$2a$10$X/52qRFCYA/DwZ6Z1ZftVu2gv.MJ4HsqXrRuB8.ZLbqj.4EVtVmBG',
      select: 'Female',
      date: 2020-12-31T00:00:00.000Z,
      phone: '342343',
      city: 'dff',
      state: 'dfss',
      specifications: [],
      __v: 0
    },
    bio: 'wweqeqwe',
    speciality: 'dentist',
    education: 'mbbs',
    treatment: 'oral care',
    location: 'ewrewre',
    hospitalList: 'sahyadri',
    awards: 'ererewrwe',
    fee: '888',
    __v: 0,
    achievements: ''
  }
]

现在,我想访问名称字段。我该怎么做?

我试着实现

代码语言:javascript
复制
console.log(docs.createdBy.name)

,但返回未定义的

EN

回答 1

Stack Overflow用户

发布于 2020-07-03 15:43:12

所以我几乎没有深入研究,感谢vishnu的评论

我使用forEach循环来获得结果

以下是更新后的代码

代码语言:javascript
复制
doc
    .find({})
    .populate({ path: "createdBy" })
    .exec((err, docs) => {
      if (!err) {
        docs.forEach((el) => {
          console.log(el.createdBy.name);
        });
        res.render("doctors", { list: docs });
      }
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62710107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档