Node.js 保存图像mongodb节点js
模式 控制器Node.js 保存图像mongodb节点js,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,模式 控制器 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:{ 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\""
]
我猜
req.body.images
是字符串化的。我相信它是一个包含许多值的字符串,而不是数组。当您将其发布到MongoDB时,因为您指定images
必须是一个数组,所以它将其保存为一个strigified值数组
所以,瞎猜,但我相信你是在(客户端)发布类似于:
"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"
]
当您应该按原样发布阵列时:
$.post("/save", { images : JSON.stringify(imagesArray) } )
但很难确定,因为我们没有前端代码,甚至没有
console.log(req.body.images)
在发送时如何在图像中推送数据?图像:{type:[String],“default:[]}
然后推送 array@NikhilSavaliya我在问题中提到uuu发布数据为:uuu@GeorgeBailey我正在将我的图像作为字符串推送。然后它给我这样的结果。如何将其作为对象推送?我要求的是显示您如何发布的代码
$.post("/save", { images : imagesArray} )