Mongodb 当我需要将更多数据添加到作为数组的字段中时,我应该使用什么

Mongodb 当我需要将更多数据添加到作为数组的字段中时,我应该使用什么,mongodb,mongoose,Mongodb,Mongoose,我很难理解updateOne和insertOne的语法。我知道如果我没有字段,我可以使用updateOne和$set创建一个字段。但我这里有一个例子 const listSchema=new mongoose.Schema({ name:String, items:Array }); const List=mongoose.model("List",listSchema); const list =new L

我很难理解updateOne和insertOne的语法。我知道如果我没有字段,我可以使用updateOne和$set创建一个字段。但我这里有一个例子

    const  listSchema=new mongoose.Schema({
          name:String,
          items:Array
        });
const List=mongoose.model("List",listSchema);

const list =new List({
name: "fruits",
items:[]
    });

所以基本上我已经创建了这个字段,但是我想将项添加到list.items数组中,所以在这种情况下我使用update还是insert?您能告诉我一些关于何时使用insert和何时使用update的一般知识吗?谢谢大家!

您需要大致了解CRUD

插入:不存在任何内容,但您需要创建它们

更新:存在某些内容,您需要添加/修改/删除某些内容

比如说,这里有空的
。如果您必须添加项目,则它属于更新类别。有很多方法可以更新mongo中的项目[
update
updateOne
updateMany
设置更新(聚合)
]


嘿!很高兴再次见到你!因此,我通过一些youtube教程学习了CRUD的基本知识,我正在尝试更深入地学习。所以基本上我知道如何创建文档并插入它们。但对于一些特定的情况,我感到困惑,例如这里我有一个数组。所以我不知道在数组中添加新项目会属于插入类别或更新类别,但是你的回答帮助我更好地理解了,我感谢你的帮助!!!顺便说一句,在这种情况下,我也可以使用.save(),因为我已经创建了字段,它只会更新?
save
-如果更新文档包含ID,它会更新。否则它会插入。所以
\u id
save
的关键。是的,我知道我必须指定一个特定的id,另一件事是,对于您的情况,您应该使用update。更新不会根据条件进行更新。另一方面,保存保存您拥有的文档。对于更新,您需要指定条件并更新文档。对于save,您应该有doc对象。我观看了一个教程,该教程首先使用findOne查找具有id的文档,然后使用.save()。所以,如果我想使用.save更新任何内容,这是一个好主意还是一个好行为?