Мангуст обновление запроса - PullRequest
0 голосов
/ 08 мая 2018

Привет. Все, что я пытаюсь сделать, используя mongoose, и я не могу заставить его работать. Это данные, которые я сохраняю.

 var mongoose = require('mongoose');

var DataSchema = new mongoose.Schema({
  advisorEmail: {
    type: String
  },
  data: {
    type: Array
  },
  client: {
    type: String,
    required: true,
    trim: true
  },
  accountBalance: {
    type: Number,
    required: true,
    trim: true
  },
  description: {
    type: String,
    required: true,
    trim: true
  },
  AccountValue: {
    type: Number,
    required: true,
    trim: true
  },
  moneyMarket: {
    type: Number,
    required: true,
    trim: true
  },
  buyingPower: {
    type: Number,
    required: true,
    trim: true
  },
  netBalance: {
    type: Number,
    required: true,
    trim: true
  },
  advisorPercentage: {
    type: Number,
    required: true,
    trim: true
  }
});

var Data = mongoose.model('Table', DataSchema);
module.exports = Data;

Ниже будет код, который я пишу, чтобы иметь возможность обновлять массив данных

Data.update({
"advisorEmail":"Travis@travis.com"
}, 
{"$push":
    { "data":{"client": "Tester", "accountBalance": 21342,     
"description": "test From Nodejs", "AccountValue": 123234,     
"moneyMarket": 11000, "buyingPower": 01, "netBalance": 10, 
"advisorPercentage": 24}}}, function(err, updateData){
       if (err) throw (err);
       console.log(updateData);
    });

Нет ошибок, и это console.log, который я получаю от "updateData".

{ ok: 0, n: 0, nModified: 0 }

Но когда я беру ту же структуру и вхожу в свой местный mongodb и делаю

 db.tables.update({
     "advisorEmail": "Travis@travis.com"
 }, {
     "$push": {
         "data": {
             "client": "bobby",
             "accountBalance": 123,
             "description": "TravisPUTO",
             "AccountValue": 123,
             "moneyMarket": 1000,
             "buyingPower": 0,
             "netBalance": 0,
             "advisorPercentage": 1
         }
     }
 })

все работает отлично и говорит вот что.

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

это проблема мангуста? Я не совсем уверен, что не так.

Спасибо за все, что вы можете сделать, чтобы помочь мне!

1 Ответ

0 голосов
/ 09 мая 2018

Пожалуйста, обновите вашу схему дополнительными полями.

advisorEmail : {type: String},
data: { type: Array },

, чтобы mongoose идентифицировал поля, которые вы обновляете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...