Javascript updateOne未在对象中保存数组

Javascript updateOne未在对象中保存数组,javascript,node.js,mongodb,mongoose,mongodb-query,Javascript,Node.js,Mongodb,Mongoose,Mongodb Query,数据库- { _id: some_id, people: { person: [] } } 质疑- const result = await Model.updateOne( { _id: _id }, { $set: { "people.person": [{name: some_name, age: 21}] }} ); 所以当我安慰结果的时候-- //结果-{ok

数据库-

{   
    _id: some_id,
    people: {
      person: []   
  } 
}
质疑-

const result = await Model.updateOne(
          { _id: _id }, 
          { $set: { "people.person": [{name: some_name, age: 21}] }}
        );
所以当我安慰结果的时候-- //结果-{ok:0,n:0,nModified:0}。 这显然不是在更新文件。 谁能告诉我哪里出了问题。 谢谢


编辑:这里所有的东西都是正确的。只是我没有在模式中得到people对象,这就是它不工作的原因。

这对你有帮助吗?我想你需要在person数组中推一个person对象,只需使用
$push
而不是
$set
看看这个,谢谢@varman让我去操场。@turivishal实际上我从前端发送了整个数组我需要在mongoDB中更新它。这就是我使用$set的原因。嘿@turivishal,我让查询工作起来了。结果是没有定义人员的模式。所以我只是在模式中添加了一些人,它开始工作了。谢谢你的帮助。