Проблемът е, че използвате синтаксиса за грешен метод за актуализиране
. Трябва да използвате този метод
синтаксис, като приемем, че scores
е документ.
return scores.updateQ({
$set: { "partId": partId, "activityId": activityId},
$unset: { topicType: '', topicId: '', courseId: ''}
},
{ strict: false });
Освен това в Mongoose се използва $set
по подразбиране, така че това трябва да е еквивалентно:
return scores.updateQ({
partId: partId,
activityId: activityId,
$unset: { topicType: '', topicId: '', courseId: ''}
},
{ strict: false });
РЕДАКТИРАНЕ:
Моето предположение е, че scores
е документ (екземпляр на модела):
var schema = new Schema({});
var Scores = mongoose.model('Scores', schema);
var scores = new Scores({});
И двете Scores.update
и scores.update
съществуват, но синтаксисът е различен, което може да е причината за вашата грешка. Ето разликата:
// Generic update
Scores.update({ _id: id }, { prop: 'value' }, callback);
// Designed to update scores specifically
scores.update({ prop: 'value' }, callback);
ЗАБЕЛЕЖКА:
Ако тези предположения не са верни, включете повече контекст в отговора си, като например как сте стигнали до там.