Mongodb Сохранить данные с помощью nodejs

0

Я новичок в mongodb. Я просто вставляю данные с помощью mongodb.My выглядит:

{

   "_id": ObjectId("5654085bf61deb761109d157"),
   "address": "dsaddsadsad",
   "email": "dsaddsadsad",
   "name": "sadasdasdsad",
   "__v": NumberInt(0) 
}

Моя модель выглядит:

// grab the mongoose module
var mongoose = require('mongoose');

// define our nerd model
// module.exports allows us to pass this to other files when it is called
module.exports = mongoose.model('users', {
    name : {type : String, default: ''},
    email : {type : String, default: ''},
    address : {type : String, default: ''},

});

Теперь пользователь комментирует это. Затем документ должен быть:

{
     "comments": [
     {
       "uname": "arpit",
       "uemail": "[email protected]",
       "comment": "How can Make we this at good",
       "posted_at": ISODate("2015-11-19T11:06:03.628Z") 
    },
     {
       "uname": "sumit",
       "uemail": "[email protected]",
       "comment": "this is also well for me",
       "posted_at": ISODate("2015-11-19T11:06:27.172Z") 
    } 
  ],
       "_id": ObjectId("5654085bf61deb761109d157"),
       "address": "dsaddsadsad",
       "email": "dsaddsadsad",
       "name": "sadasdasdsad",
       "__v": NumberInt(0) 
    }

Как я могу сделать этот документ. Мой код:

var Users = require("../app/models/users");
app.post('/comments/:id', function(req, res) {
var id = req.params.id; //coment id
var input = JSON.parse(JSON.stringify(req.body)); //comment data
//code should be here
});

Пожалуйста помоги

  • 0
    Вы определили комментарии в модели?
Теги:
mongoose

2 ответа

-1
Лучший ответ

Проверьте это:

Users.findByIdAndUpdate(id, {$push: {"comments":{
     uname: req.body.the_uname,
     uemail : req.body.the_uemail,
     comment: req.body.the_comment,
     posted_at: Date.now() 
   } 
 }
}).exec(function(error, res){});
0
/**users model*/
var mongoose = require('mongoose');
module.exports = mongoose.model('users', {
    name : {type : String, default: ''},
    email : {type : String, default: ''},
    address : {type : String, default: ''},
    comments: []
});

var Users = require("../app/models/users");
app.post('/comments/:id', function(req, res) {
   var id = req.params.id; //coment id
   var object = {}
   for(var key in req.body){
      object[key] = req.body[key];
    }
    Users
      .findByIdAndUpdate(req.params.id, {$push: {"comments": object}})
      .exec(function(error, result){
          if(error){
            console.log(error);
          }
          else{
           console.log(result);
          }
     })

Ещё вопросы

Сообщество Overcoder
Наверх
Меню