U kunt een bestaand array-element bijwerken met een $set
bewerking die de $
. gebruikt positionele operator om het array-element dat overeenkomt in de selector als volgt te identificeren:
Documents.update(
{_id: Session.get("current_document_id"), 'schema.name': "first_name"},
{$set: {'schema.$': {type: "text", size: 7, name: name, label: "First Name2"}}}
);
Dit vervangt het overeenkomende schema
element met degene die is opgenomen in de $set
voorwerp.
Als u alleen afzonderlijke velden van het beoogde schema
wilt bijwerken element, kunt u puntnotatie gebruiken. Om bijvoorbeeld alleen de size
. bij te werken en name
velden:
Documents.update(
{_id: Session.get("current_document_id"), 'schema.name': "first_name"},
{$set: {'schema.$.size': 7, 'schema.$.name': name}}
);