Reputation: 901
I have many company documents like this:
{
"name" : "testCompany",
"code" : "150",
"access" : [
{
"name" : "x",
"role" : "admin"
},
{
"name" : "y",
"role" : "User"
},
{
"name" : "z",
"role" : "User"
}
]
}
I want to find a company which has the code value of '150'. And then remove the access with name of 'z'. I wrote this, but it didn't work. I don't get any errors:
collection.update(
{code: req.body.companyCode },
{$pull: {"access.$.name": req.body.username}},
function(err, results) {
res.send({error: err, affected: results});
db.close();
});
Any ideas?
Upvotes: 0
Views: 47
Reputation: 972
Not familiar with node, but I think it should be:
collection.update(
{code: req.body.companyCode },
{$pull: {"access": {"name": req.body.username}}},
function(err, results) {
res.send({error: err, affected: results});
db.close();
});
Upvotes: 1