{_where : what } memperlakukan _where sebagai String literal, yang setara dengan:{"_where":what} . Karenanya Anda tidak mendapatkan hasil yang diperbarui karena tidak ada bidang seperti _where . Anda perlu menetapkannya dengan cara di bawah ini untuk membuatnya berfungsi.
exports.updateUsers = function ( user_id, where, what, pass ) {
var _where = 'settings.'+where; //when I use it doesn't update
var update = {};
update[_where] = what;
user.findOneAndUpdate(
{'user_id' : user_id},
update).exec(function(e,d){
pass("ok")
})
};
update[_where] = what; menyelesaikan nilai di _where variabel.