Mongoose 5.3, this.getUpdate не является функцией - PullRequest
0 голосов
/ 12 ноября 2018

Когда я пытаюсь выполнить функцию update, я получаю эту ошибку.Это происходит, когда я добавляю timestamps: true

. Я перехожу к ошибке и получаю эту функцию в schema.js в папке mongoose >> lib.

function _setTimestampsOnUpdate(next) {
  applyTimestampsToUpdate(createdAt, updatedAt, this.getUpdate(),
    this.options, true);
  applyTimestampsToChildren(this);
  next();
}

Вышеупомянутая функция использовалась с getUpdate в schema.js.Пожалуйста, помогите мне с этой проблемой.

:: SCHEMA ::

const assetListSchema = new Schema({userId: {
  type: mongoose.Schema.Types.ObjectId,
  ref: 'User',
  required: true
  },
  name: String,
  config: {
  showAssetsLibrary: {
    type: Boolean,
    required: true,
    default: true
  },
  showAssetsDetails: {
    type: Boolean,
    required: true,
    default: true
  },
  aliasName: {
    type: String,
    maxlength: 75,
    default: ""
  }
}},{ timestamps: true});

:: Функция ОБНОВЛЕНИЯ ::

assetListSchema.methods.update = async function (data) {
try {
let asst = this;
data = _.pick(data, ['showAssetsLibrary', 
'showAssetsDetails','aliasName']);
if (_.isEmpty(data)) {
  emptyError();
}
return await AssetsHierarchy.findByIdAndUpdate(asst._id, {
  config: data
}, {
  new: true,
  fields: {
    "config": 1
  }
});
} catch (err) {
 throw new Error(err.message);
}
}

:: ОШИБКА ::

TypeError: this.getUpdate не является функцией

в model._setTimestampsOnUpdate (D: \ inspeApp \ inspe-backend \ node_modules \ mongoose \ lib \ schema.js: 873: 56)

в callMiddlewareFunction (D: \ inspeApp \ inspe-backend \ node_modules \ kareem \ index.js: 427: 23)

в следующем (D: \ inspeApp \ Inspection-backend \ node_modules \ kareem \ index.js: 58: 7)

в Kareem.execPre (D: \ inspeApp \ exam-backend \ node_modules \ kareem \ index.js: 86: 8)

в Kareem.wrap (D: \ inspeApp \ exam-backend \ node_modules \ kareem \ index.js: 265: 8)

в модели. Обновление $ __ (D: \ inspeApp \ Inspection-Backend \ node_modules \ kareem \ index.js:339: 11)

в utils.promiseOrCallback.callback (D: \ inspeApp \ inspe-backend \ node_modules \ mongoose \ lib \ helpers \ model \ applyHooks.js: 80: 30)

на обещание (D: \ inspectionApp \ exam-backend \ node_modules \ mongoose \ lib \ utils.js: 246: 5)

в новом Promise ()

в Object.promiseOrCallback (D: \ inspeApp \ inspe-backend)\ node_modules \ mongoose \ lib \ utils.js: 245: 10)

в model.objToDecorate. (анонимная функция) [в качестве обновления] (D: \ inspeApp \ inspection-backend \ node_modules \ mongoose \ lib \helpers \ model \ applyHooks.js: 79: 20)

при обновлении (D: \ inspeApp \ Inspection-Backend \ App \ контроллеры \ параметры \ иерархия активов \ assetsHierarchyController.js: 163: 33)

в Layer.handle [как handle_request] (D: \ inspeApp \ inspe-backend \ node_modules \ express \ lib \ router \ layer.js: 95: 5)

в следующем (D: \examApp \ exam-backend \ node_modules \ express \ lib \ router \ route.js: 137: 13)

в Route.dispatch (D: \ inspeApp \ инспекция-бэкэнд \ node_modules \ express \ lib \ router \route.js: 112: 3)

в Layer.handle [как handle_request] (D: \ inspeApp \ Inspection-Backend \ node_modules \ express \ lib \ router \ layer.js: 95: 5)

...