Обновление Mongoose не обновляется: {ok: 0, n: 0, nModified: 0} - PullRequest
0 голосов
/ 09 октября 2018

У меня есть коллекция с именем "permissions" на MongoDB.Я хочу реализовать простое обновление, подобное этому:

let schema = new Schema({
    title: String
  });
  let Permissions = mongoose.model("Permission", schema);
  let permission = new Permissions();

  let query = {};
  let newValues = {
    $set: {
      title: "Yes"
    }
  };
  permission.updateOne(query, newValues, (err, docs) => {
    console.log(err); // null
    console.log(docs); // { ok: 0, n: 0, nModified: 0 }
    if (err) return cast.error(err);
    return cast.ok();
  });

Однако я получаю { ok: 0, n: 0, nModified: 0 } в журнале консоли docs и null в журнале консоли err.

Что я делаю не так?

1 Ответ

0 голосов
/ 09 октября 2018

Согласно документам

Модели представляют собой модные конструкторы, составленные из определений схемы. Экземпляр модели называется документом .Модели отвечают за создание и чтение документов из базовой базы данных MongoDB.

Поэтому вам нужно создавать экземпляр только во время вызова .save().Другие операции (обновление, чтение, удаление) применяются к существующему документу и, следовательно, нет необходимости создавать экземпляр.

...