Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node js mongoose多照片数据缓冲区_Javascript_Node.js - Fatal编程技术网

Javascript Node js mongoose多照片数据缓冲区

Javascript Node js mongoose多照片数据缓冲区,javascript,node.js,Javascript,Node.js,大家好,再见 这里有个简单的问题。我怎样才能使这个多张照片我的模型看起来像这样 我的模特 new mongoose.Schema({ photo: { data: Buffer, contentType: String }, }) 还有我的控制器 if (files.photo) { post.photo.data = fs.readFileSync(files.photo.path); post.photo.contentType = files.photo.type;

大家好,再见

这里有个简单的问题。我怎样才能使这个多张照片我的模型看起来像这样

我的模特

new mongoose.Schema({
 photo: {
  data: Buffer,
  contentType: String
 },
})
还有我的控制器

if (files.photo) {
  post.photo.data = fs.readFileSync(files.photo.path);
  post.photo.contentType = files.photo.type;
}
post.save((err, result) => {});
if (files.photos && files.photos.length > 0) {
  post.photos=[];
  for (let photo in files.photo){
    let data = fs.readFileSync(files.photo.path);
    let contentType = files.photo.type;
    post.photos.push({
      data, contentType
    })
  }
}
post.save((err, result) => {});
这真的很简单

模型

new mongoose.Schema({
 photos: [{
  data: Buffer,
  contentType: String
 }],
})
和控制器

if (files.photo) {
  post.photo.data = fs.readFileSync(files.photo.path);
  post.photo.contentType = files.photo.type;
}
post.save((err, result) => {});
if (files.photos && files.photos.length > 0) {
  post.photos=[];
  for (let photo in files.photo){
    let data = fs.readFileSync(files.photo.path);
    let contentType = files.photo.type;
    post.photos.push({
      data, contentType
    })
  }
}
post.save((err, result) => {});
这真的很简单

模型

new mongoose.Schema({
 photos: [{
  data: Buffer,
  contentType: String
 }],
})
和控制器

if (files.photo) {
  post.photo.data = fs.readFileSync(files.photo.path);
  post.photo.contentType = files.photo.type;
}
post.save((err, result) => {});
if (files.photos && files.photos.length > 0) {
  post.photos=[];
  for (let photo in files.photo){
    let data = fs.readFileSync(files.photo.path);
    let contentType = files.photo.type;
    post.photos.push({
      data, contentType
    })
  }
}
post.save((err, result) => {});

我认为应该是
&&files.photos.length>0
(带“s”)和
for(让照片进入文件.照片){
(带“文件”),否则看起来不错!根据键入更正它不符合(files.photos)的条件。如果我使用files.photo.length,它会说无法读取属性“length”,您需要发送照片选项卡中的文件,而不是照片中的文件。如果您使用的是express中间件,请确保允许解析多个文件,否则您将得到一个文件。除了for,还有其他方法吗?它会像10个循环一样多次循环,即使我只发送2个文件我认为应该是
&&files.photos.length>0
(带“s”)和
for(让照片进入files.photos){
(带“files.”),否则看起来不错!根据键入更正它不符合以下条件(files.photos)。如果我使用files.photo.length,它会说无法读取属性“length”,您需要发送照片选项卡中的文件,而不是照片中的文件。如果您使用的是express中间件,请确保允许解析多个文件,否则您将得到一个文件。除了for,还有其他方法吗?它会像10个循环一样多次循环,即使我只发送2个文件夹