Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 更新MongoDB中的嵌套数组_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js 更新MongoDB中的嵌套数组

Node.js 更新MongoDB中的嵌套数组,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我有很多这样的公司文件: { "name" : "testCompany", "code" : "150", "access" : [ { "name" : "x", "role" : "admin" }, { "name" : "y", "role" : "User" }, { "name" : "z", "role" : "User" }

我有很多这样的公司文件:

{
 "name" : "testCompany",
 "code" : "150",
 "access" : [ 
    {
        "name" : "x",
        "role" : "admin"
    }, 
    {
        "name" : "y",
        "role" : "User"
    }, 
    {
        "name" : "z",
        "role" : "User"
    }
   ]
 }
我想找一家代码值为“150”的公司。然后删除名为“z”的访问权限。这是我写的,但没用。我没有发现任何错误:

collection.update(
{code: req.body.companyCode }, 
{$pull: {"access.$.name":  req.body.username}}, 
function(err, results) {
                res.send({error: err, affected: results});
                db.close();
            });

有什么想法吗?

不熟悉node,但我认为应该是:

collection.update(
{code: req.body.companyCode }, 
{$pull: {"access": {"name": req.body.username}}}, 
function(err, results) {
                res.send({error: err, affected: results});
                db.close();
            });