{_where : what } _whereを扱います Stringとして リテラル。これは、{"_where":what}と同等です。 。したがって、_whereなどのフィールドがないため、更新された結果は得られません。 。動作させるには、以下の方法で割り当てる必要があります。
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; _whereの値を解決します 変数。