MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB &Meteor - A consulta para enviar para o array aninhado não funciona, nenhum erro é lançado


Remova o operador posicional($ ) da query parâmetro da update função.
Meteor.users.update(
    { 
        _id:options.userId, 
        'buyer.boards.title':options.boardTitle 
    },
    { $push: { 
        'buyer.boards.$.idArr':options.newId }
    }
);

Dos documentos:
db.collection.update(
   { <array>: value ... },
   { <update operator>: { "<array>.$" : value } }
)

O operador posicional deve ser usado no update parâmetro e não na query parâmetro. Isso atualiza apenas as primeiras boards objeto que tem o title correspondente .