从JSON数组对象获取嵌套数据

时间:2017-11-20 12:27:09

标签: json node.js mongodb mongoose

这就是我的数据

 { _id: 5a114dede58f4a05cb135d96,

   messages: [
        { 
         id: 5a114c66e58f4a05cb135d8c,

         User: 'developer2', 

        _id: 5a114e26e58f4a05cb135d9b,

          texts: [{
                   _id: 5a114e26e58f4a05cb135d9d,
                   message: 'hii',
                   username: 'ruby' 
                  },
                  { 
                   _id: 5a114e40e58f4a05cb135d9e,
                   message: 'es',
                   username: 'shan' 
                  }
                                         ] } ]
                  }
     }

如何从文本中提取所有数据 我用过这个但是没有回复任何东西

  <% texts.messages.texts.forEach(function(text){ %>


  <p><%=text.message%></p>
   <p><%=text.username%></p>

   <% })  %>

**编辑:当我打印时

&lt;%= text%&gt;

**

{ _id: 5a114dede58f4a05cb135d96,  
    messages: [ { id: 
     5a114c66e58f4a05cb135d8c,
       User: 'developer2', _id: 
     5a114e26e58f4a05cb135d9b,
      texts: [Array] } ] 
}

除非我打印出来,否则我无法在文本中看到数据  

&LT;%= texts.messages%GT;

*这是我写完text.messages *后得到的。

 {
texts: [{
                   _id: 5a114e26e58f4a05cb135d9d,
                   message: 'hii',
                   username: 'ruby' 
                  },
                  { 
                   _id: 5a114e40e58f4a05cb135d9e,
                   message: 'es',
                   username: 'shan' 
                  }
                                         ] } ]
                  }
     }

我将数据传输到ejs的途径

User.findOne({username:req.user.username},{messages:
      { $elemMatch: { 
      User:req.params.username} }},
      function(err,data){
         if (err) {
            throw err;
           } else {
            res.render("chat",{texts:data,user:founduser});
        }
       }) 

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

myplugin_activate()