如何将json对象数组保存到猫鼬? [英] How to save array of json object to mongoose?

查看:115
本文介绍了如何将json对象数组保存到猫鼬?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将对象数组保存到猫鼬模式,但是它无法将数据加载到laptop模式中,我只看到一个包含id的插入. 如何将json对象数组保存到猫鼬模式?

I am trying to save array of object to mongoose schema but it is failing to load data into laptop schema i only see one insertion that contains id. How can i save array of json object to mongoose schema ?

controller.js

controller.js

var laptopData = [
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'HP'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'HP'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'},
{ name: 'Hp probook 15.1',cpu:'2.4GHZ' ,ram: '4GB', harddrive: '160GB',Brand:'Hp'}
]
var laptop = new Laptop({laptopData});
laptop.save(function(err) {
  // we've saved the dog into the db here
  if (err) throw err;

});

schema.js

schema.js

'use strict';

var mongoose = require('bluebird').promisifyAll(require('mongoose'));

var LaptopSchema = new mongoose.Schema({
  name: String,
  ram:String,
  harddrive:String,
  Brand: String
});

module.exports = mongoose.model('Laptop', LaptopSchema);

推荐答案

您应单独创建对象并保存.您不能传递这样的数组.在

You should individually create objects and save them. You can't pass an array like that. Use something in the lines of

var laptopData = [...];
for(var laptopItem in laptopData){
    new Laptop(laptopData[laptopItem])
      .save()
      .catch((err)=>{
        console.log(err.message);
      });
}

这篇关于如何将json对象数组保存到猫鼬?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆