Nie wiem, czy Mongoose 5.0.0 ma obsługiwać Arrayfilters po wyjęciu z pudełka, ale można to osiągnąć za pomocą metody poleceń Mongoose, która jest bezpośrednio wykonywana na MongoDB, dzięki czemu może korzystać ze wszystkich dostępnych funkcji, w tym ArrayFilters na MongoDB 3.6.1
Przykład:
mongoose.connection.db.command({
update: <YourModel>.collection.name,
updates: [
{
q: { 'field1.field2._id': mongoose.Types.ObjectId(<someObjectid>) },
u: {
$set: { 'field1.$.field2.$[field].fieldToUpdate': "updated!" },
},
arrayFilters: [
{ 'field._id': mongoose.Types.ObjectId(<someObjectid>) },
],
},
],
})