Is there any way to use dynamic keys with the node-mongodb-native driver? By this I mean having a variable hold the key instead of using the key directly.
As in when one would normally do this:
db.createCollection('col', function(err, col){
col.insert({'_id':'wak3ajakar00'});
}
to do this instead:
db.createCollection('col', function(err, col){
var ID = '_id';
col.insert({ID:'wak3ajakar00'});
}
When I run the latter code, I end up with a document in collection db.col with a key called ID
in addition to a standardly created _id
, as opposed to just a key _id
with the value wak3ajakar00
. This leads me to believe that it isn't actually possible to do this directly.
Instead, I'm now just creating the document that I want to insert ahead of time as follows:
db.createCollection('col', function(err, col){
var ID = 'wak3ajakar00';
var key = '_id';
insertion = {}
insertion[key] = ID;
col.insert(insertion);
}
This works exactly like I want it to, but I just wanted to know if there are any better ways to go about this. JavaScript, NodeJS, and MongoDB are all new to me, so I feel like I could easily be missing something. If not, are there any cleaner ways to write the above code in JavaScript?
Best, and thanks,
Sami