Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Перезапись элемента массива в документе MongoDb Mongoose (https://javascript.ru/forum/node-js-io-js/79571-perezapis-ehlementa-massiva-v-dokumente-mongodb-mongoose.html)

illusion 23.02.2020 19:46

Перезапись элемента массива в документе MongoDb Mongoose
 
Имеется схема в Mongoose
В ней имеются массив и Number:

costs: {
    nameCategories:{
      type:[String],
      minlength:[1,"Вы не ввели имя категории"],
      maxlength:[40,"Слишком длинное имя категории"],
      unique: true,
      default: ["Жилье","Коммунальны услуги","Продукты","Проезд","Интернет",
      "Сотовая связь","Одежда","Медикаменты","Хозяйственные расходы","Покупка техники",
      "Развлечения и отдых","Подарки к дню рождения","Прочее"]
    }

totalAll:{
      type:Number,
      default:0
      },


Читаю весь документ :
findOne
Изменяю user.costs.totalAll=2;
Сохраняю:
user.save(function(err){
        if(err) return console.log(err);
    });


Сохраняется нормально.
Далее пытаюсь сделать также с элементом массива:

user.costs.nameCategories[0]="Жилье2";

Никаких ошибок не вываливается и значение не изменяется в самом документе.

Пробовал изменить элемент через Compass MongoBD в нем реально значение изменяется. Значит со структурой все верно, я неправильно сохраняю, в чем я ошибся?

Заранее спасибо за ответ.


Часовой пояс GMT +3, время: 07:09.