Mongoose update that returns no errors, but neither update

I am trying to learn CRUD with mongoose. I just skip the update part. What am I doing wrong?

MY MODEL

var mongoose = require('mongoose');

var testSchema = new mongoose.Schema({
    name: String,
    number: Number
});

mongoose.model('TestData', testSchema);

MY ROUTES

// get the models
var Test = mongoose.model('TestData');

PARAM
If the link has a 'test'url parameter, it will look if the object exists in the database, otherwise return errors.

router.param('test', function(req, res, next, id){
    var query = Test.findById(id);

    query.exec(function(err, test){
        if(err){ return next(err); }
        if(!test){ return next(new Error('can\'t find test')); }
        req.test = test;
        return next();
    });
});

GET BY ID

    /* GET testdata/:id */
    router.get('/testingdata/:test', function(req, res, next){
        req.test.populate('test', function(err, test){
            res.json(test);
        });
    });

DELETE

/* DELETE testdata/:id */
router.delete('/testingdata/:test', function(req, res, next){
    req.test.remove('test', function(err, test){
        console.log('removed');
        res.json(test);
    });                         
});

MY PROBLEM
Now here is my problem, if I try to update it, I just missed something.

/* PUT testdata/:id */
router.put('/testingdata/:test', function(req, res, next){
    req.test.update('test',{$set: {name: 'new data'}} , function(err, test){
        res.json(test);
    });                         
});

I am not getting any errors, but not updating anything. It even returns some data.

{
    "ok": 0,
    "n": 0,
    "nModified": 0
}
+4
source share
2 answers

(test), req.test test.

req.test.update({name: 'new data'} , function(err, test){
  res.json(test); // test would be `1` if success
});

update , , save:

req.test.name = 'new data';
req.test.save(function(err, test){
  res.json(test);
});
+4

, , ,

{_id:id}

, -, , .

live model req.test, :

req.test.name= 'new data';
req.test.save(...

, .

+1

All Articles