Показать сообщение отдельно
  #1 (permalink)  
Старый 23.02.2020, 19:46
Интересующийся
Отправить личное сообщение для illusion Посмотреть профиль Найти все сообщения от illusion
 
Регистрация: 01.02.2020
Сообщений: 22

Перезапись элемента массива в документе 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 в нем реально значение изменяется. Значит со структурой все верно, я неправильно сохраняю, в чем я ошибся?

Заранее спасибо за ответ.
Ответить с цитированием