Moja aplikacja używa Mongoose i ma schemat, który wykorzystuje timestamps option:Pomiń timestamps middleware dla niektórych aktualizacji w Mongoose
var fooSchema = new Schema({
name: String,
}, {
timestamps: true,
});
mongoose.model('Foo', fooSchema);
Więc gdy aktualizacja jest napisane na gromadzenie, właściwość updatedAt
zmienia się na bieżącej daty . Ale teraz chciałbym dodać kilka zmian, które powinny zaktualizować właściwość . Niektóre odpowiedzi na Stackoverflow (example) sugerują użycie Foo.collection
jako podobno dostępnego macierzystego sterownika MongoDB. Tak więc spróbowałem:
Foo.collection.update({ _id: someFooId }, { $set: { name: 'New Name' } });
Jednak zmieniło się również właściwość updatedAt
.
Jak mogę zaktualizować dokument bez zmieniania updatedAt
?
Mam ten sam dokładny problem. Czy kiedykolwiek znalazłeś rozwiązanie/obejście tego problemu? – danii
@danii Nie, niestety nie. Usunąłem oprogramowanie pośrednie sygnatur czasowych i zaktualizowałem znaczniki czasu ręcznie w razie potrzeby. – str