【发布时间】:2016-02-09 00:27:31
【问题描述】:
假设我在 Mongoose 架构上有这个数组属性('articles'):
articles: [
{
kind: 'bear',
hashtag: 'foo'
},
{
kind: 'llama',
hashtag: 'baz',
},
{
kind: 'sheep',
hashtag: 'bar',
}
]
如何使用
$pullhttps://docs.mongodb.org/manual/reference/operator/update/pull/
通过检查标签的值来查看它是否与模式匹配来从这个数组中远程对象?
例如,如果我想删除文章数组中 hashtag='foo' 的对象。
我的最佳猜测如下,但它似乎不起作用:
var data = {
"$pull": {
"articles": {
"$elemMatch": {
"hashtag": "foo"
}
}
}
};
Model.update({},data); //doesn't quite work
这似乎有效:
var data = {
"$pull": {
"articles": {
"hashtag": 'foo'
}
}
};
Model.update({},data); //seems to work
如果您有更好的解决方案,或者您可以提供替代解决方案,请提供答案,谢谢
【问题讨论】:
标签: node.js mongodb mongoose mongodb-query