如何通过POST-API将数据插入MongoDB



我想通过用户的用户名搜索用户,并插入电影&在文档中查看(他们在电影领域(。

我的模式结构如下:const userschema=新猫鼬。架构({

name:{
type:String,
minlength:3
},

username:{
type:String,
minlength:3
},
password:{
type:String,
},
token:{
type:String
},

movies:[{

movie:{
type:String
},
review:{
type:String
},
rating:{
type:String
}
}
],
invites:[{
type:String,
}],
favourites:[{
movie_name:{
type:String
}
}]
})

到目前为止我所做的:app.post("/review",async(req,res(=>{

const{movie, review, username}=req.body;
if(!movie || !review || !username){             //check if details entered or not
return res.json({error:"Enter all details"});
}
try{
const userexist = await signup.findOne({username:username});  //searching user by username 
if(userexist){
const result = await signup.findOneAndUpdate({username:username}, { 
$set: {
movie:req.body.movie,         
review: req.body.review}
}, {
new: true
});
const resu=await result.save();
res.status(201).send(resu);       
} 
}
catch(e){
console.log(e);
res.status(400).send(e);
}

})

请帮我插入电影&在不更改现有模式的情况下查看数据库(进入电影字段(。

您可以这样做。制作一个函数来更新用户。然后,如果用户存在,即如果有结果,则将其推送到电影阵列中。

let updateUser => {
if(result) {
UserModel.findByIdAndUpdate({
_id: req.body.id
},
{
$push: {
movies: {
movie: req.body.movies
review: req.body.review
}
}
}

最新更新