2016-10-14 2 views
0

Я пытаюсь обновить запись, но это не происходит в моем случае, и я не уверен, о том случае, когда он пошел Жун, может ли один предложить мне help.ThanksКак выполнить обновление в мангусте

Моих код мангуста,

exports.updatestudent = function (req, res) { 
var student = new Student(req.body); 
var data = {}; 
var id = req.params; 
var params = req.body; 
var item = { 
    'name': params.name, 
    'rollnumber': params.rollnumber, 
    'class': params.class, 
    'city': params.city 
}; 
Student.update({ _id: id },{ $set: item }, function (err, result) { 
    if (err) { 
     console.log('err'); 
    } 
    if (result) { 
     data = { status: 'success', error_code: 0, result: result, message: 'Article updated successfully' }; 
     res.json(data); 
    } 
}); 

};

моя схема,

var StudentSchema = new Schema({ 
    name: { 
    type: String 
    }, 
    rollnumber: { 
    type: String 
    }, 
    class: { 
    type: String 
    }, 
    city: { 
    type: String 
    }, 
    status: { 
    type: String 
    }, 
    _id: { 
    type: Schema.ObjectId 
    } 
}); 
/** 
* Hook a pre validate method to test the local password 
*/ 
mongoose.model('student', StudentSchema, 'student'); 

моего результат в почтальоне, { "статус": "Успех", "error_code": 0, "результат" : { "КИ": 0, "п": 0, "nModified": 0} , "сообщение": "Статья успешно обновлена" }

Я пытаюсь обновить запись, но не ч appening в моем случае и я не уверен, о том случае, когда он пошел Жун, может ли один предложить мне help.Thanks

ответ

2

Убедитесь, что вы получаете ваш id в var id = req.params;

И я уверен, что вы не получите ваш id как это

req.params; проверить ваши ценности и дать свой правильный идентификатор в запросе

Update

var item = {}; 

if (params.name) { 
    item.name = params.name; 
} 
if (params.rollnumber) { 

    item.rollnumber = params.rollnumber 
} 


Student.update({ 
    _id: id 
}, { 
    $set: item 
}, function(err, result) { 
    if (err) { 
    console.log('err'); 
    } 
    if (result) { 
    data = { 
     status: 'success', 
     error_code: 0, 
     result: result, 
     message: 'Article updated successfully' 
    }; 
    res.json(data); 
    } 
}); 
+0

я я получаю его, а также его действующий идентификатор .................... ....... – MMR

+0

Вы можете показать свое значение 'req.prams' здесь? – abdulbarik

+0

Я очистил его, используя var id = mongoose.Types.ObjectId (req.params.id); console.log (id) – MMR

2

Возможно, вы забыли указать ключ.

Заменить

var id = req.params; 

По

var id = req.params.id; 
Смежные вопросы