使用mongoose在mongodb中存储对象数组

时间:2017-07-19 20:24:55

标签: node.js mongodb express mongoose-schema

有人可以为此提供解决方案吗?我在req.body中获取了一组对象。我正在寻找一种使用Mongoose将其存储在MongoDB中的方法。

MYSCHEMA

const hobbySchema = new Schema({

     hobbies:[{ 
         hobby : {type:String}
     }]
},{collection:'hobby'});

req.body

[{ newHobby:'Hobby 1'},{ newHobby:'Hobby 2'},{ newHobby:'Hobby 3'}]

API部分

router.post('/hobby',(req,res)=>{
        console.log(req.body);
        let hobby = new Hobby({
               hobbies: [{
                            hobby: req.body.newHobby // I don't know how to store it in mongo
                   }]
        });
        hobby.save((err)=>{
            if(err){
                res.json({ success:false , message:err});
            } else {
                res.json({ success:true , message:'Hobbies saved!'});
            }
        });
});

1 个答案:

答案 0 :(得分:0)

const Hobby= require('./hobby.model'); 
router.post('/hobby',(req,res)=>{

    Hobby.create({hobbies:req.body},function(err,hobby){

            if(err){
                res.status(4xx).json({ success:false , message:err});
            } else {
                res.status(2xx).json({ success:true ,hobby:hobby message:'Hobbies saved!'});
            }

})
});