Você foi muito profundo com esse curinga
$ . Você corresponde a um item nos Fields array, então você tem acesso a isso, com:Fields.$ . Esta expressão retorna a primeira correspondência em seus Fields array, então você alcança seus campos por Fields.$.Field ou Fields.$.Result . Agora, vamos atualizar o
update :db.test.update({
"Fields.Field": "Lot No"
}, {
$addToSet: {
"Fields.$.Rules": {
'item_name': "my_item_two",
'price':1
}
}
}, false, true);
Observe que reduzi a
query pois é igual à sua expressão.