node.js - MongoDB, Monk, findAndModify not upserting -


i have function in node project supposed update or create new entry based on whether slug matches. updates response being returned correct won't insert new item , i'm not sure i've missed.

mongodb version 3.0.4 (installed via homebrew) mac osx yosemite mongodb node package 2.0.39 monk 1.0.1

collection.findandmodify({       "query": { "slug": pluginslug },       "update":         {             "slug"            : pluginslug,             "name"            : response.data.name,             "current_version" : response.data.version,             "description"     : response.data.short_description,             "change_log"      : response.data.sections.changelog,             "updated"         : response.data.last_updated,             "tested"          : response.data.tested         },       "upsert" :true,       "new" : true       }, function (err, doc) {         if (err) {           res.send("there problem adding information database.");         }         else {           console.log(doc)           res.redirect("plugins/new");         }     }); 

am missing obvious here?

i've found correct answer here: issue simple mongo/monk findandmodify query

the solution provide options own object (it not documented monk docs):

db.test.findandmodify( {   "query": { "slug": "1234512345" },   "update":     {         "$set":          {             "slug"            : "1234512345",             "name"            : "response.data.name",             "current_version" : "response.data.version",             "description"     : "response.data.short_description",             "change_log"      : "response.data.sections.changelog",             "updated"         : "response.data.last_updated",             "tested"          : "response.data.teste"         }     } }, {   "upsert" :true,   "new" : true },  function (err, doc) {     if (err) {         console.log(err);     }     else {       console.log(doc);     } }); 

Comments