schema
images:{ type : Array , "default" : [] }
控制器
return new Promise(function(resolve,reject){
var dt = new Date(req.body.dateOfBirth)
var experiences = new Experiences({
'images': req.body.images
});
experiences.save(function(err,experiences){
if(err){
reject(err);
}else{
resolve(experiences);
}
});
});
我需要将多个图像保存到单个图像中
将数据发布为 :
"https://images.pexels.com/photos/346768/pexels-photo-346768.jpeg?w=940&h=650&auto=compress&cs=tinysrgb","https://images.pexels.com/photos/287240/pexels-photo-287240.jpeg?w=940&h=650&auto=compress&cs=tinysrgb"
但是当我查看我的文档时。 得到这样的结果:
"images" : [
""https://images.pexels.com/photos/346768/pexels-photo-346768.jpeg?w=940&h=650&auto=compress&cs=tinysrgb","https://images.pexels.com/photos/287240/pexels-photo-287240.jpeg?w=940&h=650&auto=compress&cs=tinysrgb""
]
我做错了什么请帮忙?我想要这样的结果:
"images" : [
"https://images.pexels.com/photos/346768/pexels-photo-346768.jpeg?w=940&h=650&auto=compress&cs=tinysrgb","https://images.pexels.com/photos/287240/pexels-photo-287240.jpeg?w=940&h=650&auto=compress&cs=tinysrgb"
]
我的猜测是req.body.images
是字符串化的。我相信它是一个包含许多值的字符串,而不是一个数组。当您将其发布到MongoDB时,由于您指定images
必须是数组,因此它会将其保存为分层值数组。
所以,盲目猜测,但我相信你正在发布(客户端(类似的东西:
$.post("/save", { images : JSON.stringify(imagesArray) } )
什么时候你应该按原样发布你的数组:
$.post("/save", { images : imagesArray} )
但很难确定,因为我们没有前端代码,甚至没有console.log(req.body.images)