Die*_*ego 5 javascript mongoose node.js lodash
我有一个这样的objectId:
["56153e4c2040efa61b4e267f","56033932efefe0d8657bbd9e"]
要在我的模型中保存该信息,我使用:
items: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Items'
}]
Run Code Online (Sandbox Code Playgroud)
我要做的是从删除请求中拉出一个与前端发送的objectId相等的数组元素.
我正在使用的代码:
_.remove(unit.items, request.params.itemId);
Run Code Online (Sandbox Code Playgroud)
我正在使用lodash库.
我想的问题是数组有ObjectId元素,我试图与一个字符串比较request.params.itemId.
我有一个非常相似的设置,其中有一个“Event”对象,该对象有一个保存为 ObjectId 数组的“Assignment”对象数组。我能够简单地使用
obj.arrayField.remove(idToRemove);
Run Code Online (Sandbox Code Playgroud)
这是我的删除路由处理程序中的相关代码:
var id = req.assignment._id;
req.event.assignments.remove(id);
req.event.save(function(err, event) {
//etc
}
Run Code Online (Sandbox Code Playgroud)
这对你有用吗?
unit.items.remove(request.params.itemId);
Run Code Online (Sandbox Code Playgroud)