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,我让查询工作起来了。结果是没有定义人员的模式。所以我只是在模式中添加了一些人,它开始工作了。谢谢你的帮助。