首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从另一个集合中删除dbref元素

从另一个集合中删除dbref元素
EN

Stack Overflow用户
提问于 2016-07-06 03:46:38
回答 0查看 1.5K关注 0票数 2

我有一个包含元素的集合会话

代码语言:javascript
复制
{
    "_id" : NumberLong(1),
    "_class" : "cws.CWSession",
    "title" : "java ",
    "description" : "apprendre à programmer en java"  
}

{
    "_id" : NumberLong(2),
    "_class" : "cws.CWSession",
    "title" : "Git",
    "description" : "Formation Git"    
}

我还有一个包含CWSession的dbRed的集合:

代码语言:javascript
复制
{
"_id" : NumberLong(2),
"_class" : "cws.CollaborativeWs",    
"title" : "AngularJS",
"description" : "AngularJS",
"cws" : [ 
    {
        "$ref" : "cwsession",
        "$id" : NumberLong(1)
    },
    {
        "$ref" : "cwsession",
        "$id" : NumberLong(2)
    }
]
}

{
"_id" : NumberLong(3),
"_class" : "cws.CollaborativeWs",    
"title" : "Java",
"description" : "principes java ",
"cws" : [ 
    {
        "$ref" : "cwsession",
        "$id" : NumberLong(3)
    }
]
}

我使用mongo模板删除会话

代码语言:javascript
复制
mongoTemplate.remove(new Query(Criteria.where("_id").is(id)), CWSession.class);

它工作正常,会话在第一个集合中被删除,但仍然在第二个集合中,您能告诉我我可以使用什么来删除第二个集合中的引用吗?提前谢谢你。

代码语言:javascript
复制
public void deleteSessionfromCW(String idCW, String idS){
    Query query = new Query(where("_id").is(idCW).and("cws.id").is(id));
    Update update = new Update().pull("cws", new BasicDBObject("id", "1"));
    mongoTemplate.updateFirst(query, update, Item.class);
}
EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38211526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档