我有一个看起来像这样的模型:
mongoose.Schema({
username: String,
posts: [{ type: Schema.Types.ObjectId, ref: 'Post' }]
});
我有一个端点,我想传递一个 ObjectID:
app.delete('/post', function(req, res) {
User.findOne({ _id: req.user._id}, function(err, result) {
result.pull({ _id: req.body.post_id });
});
});
感觉应该可以工作,但我收到此错误:
CastError: Cast to ObjectId failed for value "[object Object]"
我究竟做错了什么?
如果你想从数组中删除一个元素,请使用这个
User
.update(
{_id: req.user._id},
{ $pull: {posts: req.body.post_id } }
)
.then( err => {
...
});
这里的文档 https://docs.mongodb.org/manual/reference/operator/update/pull/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)