提问者:小点点

单击元素时从mongodb中删除特定的数组元素


当我从应用程序中点击MongoDB中存储的特定数组元素时,我使用这段代码来删除该元素。但是这个代码不起作用。

模式结构看起来是这样的-

常量tagsSchema=新架构({category:{type:String,Required:true},tName:{type:Array}},{_id:true});

下面是我用来从数据库中删除数组元素的代码-

tags.updateOne({tName:req.params.name},{$Pull:{_id:[req.params.id]}})

例如-“tname”:“technical”,“nontechnical”

现在,技术是被点击在应用程序删除,但与代码我正在使用它没有得到删除。


共2个答案

匿名用户

您可以在数组字段后不使用[]直接使用element_value,如下所示。

Tags.updateOne({tname: req.params.name}, { $pull: { your_array_field: req.params.id } } )

匿名用户

您必须通过它的“_id”找到特定的标记,然后从“tname”数组中移除特定的名称。

Tags.updateOne({ _id: req.params.id }, { $pull: { tname: req.params.name } })