2012-06-25 4 views
6

ich nicht setzen Variable den Schlüssel für die Aktualisierung, meinen Code ...wie man Schlüssel durch var in mongoose, Node.js einstellt?

mongoose.model('members', Schema).update({ id: '0' }, {$push: {'this_key': 'value'}} , [], function (err, data){}); 

wenn ich

verwenden
var this_key = 'test'; 

aber this_key ist nicht 'test' es ist 'this_key' in

mongoose.model('members', Schema).update({ id: '0' }, {$push: {this_key: 'value'}} , [], function (err, data){}); 

ich brauche Wert ext POST [] erhalten Variable this_key zu setzen,

h Möchten Sie den Schlüssel per Variable in mongoose, Node.js setzen?

Antwort

13

Die Syntax für String-Literale in Objektfeldnamen bringt Sie hier hin. Um es zu umgehen, machen Sie ein Zwischenobjekt und konstruieren Sie es ohne Verwendung von Literalen:

var this_key = 'test'; 
var push = {}; 
push[this_key] = 'value'; // here, it will use the variable 

mongoose.model('members', Schema).update(
    { id: '0' }, {$push: push} , [], function (err, data){}); 
+0

vielen Dank.^_^ –

+0

Den Leuten fast 6 Jahre später helfen! – DORRITO

Verwandte Themen