2013-12-21 106 views
0

在收集使用findAndModify()函数与此数据如何蒙戈

var documents = [{ 
     _id : 1 
    , title: "Buy milk" 
    , priority: 5 
    , started: false 
    , done: false 
    , startTime: null 
    , endTime: null 
    }, { 
     _id : 2 
    , title: "Become a Billionaire" 
    , priority: 1 
    , started: false 
    , done: false 
    , startTime: null 
    , endTime: null 
    }, { 
     _id : 3 
    , title: "Play DOOM" 
    , priority: 1000 
    , started: false 
    , done: false 
    , startTime: null 
    , endTime: null 
    } 
    ] 

使用findAndModify()函数与IM参数如下:

db.test.findAndModify({started:false},{priority:-1},{$set:{started:true}},{new:true}) 

IM再次ň再次

收到此错误

findAndModifyFailed失败:{“ok”:0,“errmsg”:“需要删除或 up日期”}在SRC /蒙戈/壳/ collection.js:399


有谁能够告诉我在哪里,我为做错误, 感谢

+0

原子的文档那么它说的问题,你需要指定一个OP类型 – Sammaye

回答

3

那么,您可以updateremovefindAndModify

db.test.findAndModify({ 
    query:{started:false, priority:1}, 
    update:{$set : {started:true}}, 
    new:true 
})