¿Hay alguna forma de usar claves dinámicas con el controlador node-mongodb-native? Con esto me refiero a tener una variable mantenga presionada la tecla en lugar de usar la tecla directamente.¿Hay alguna forma de utilizar una clave dinámica con node-mongodb-native?
Como en cuando uno normalmente hacer esto:
db.createCollection('col', function(err, col){
col.insert({'_id':'wak3ajakar00'});
}
a hacer esto en su lugar:
db.createCollection('col', function(err, col){
var ID = '_id';
col.insert({ID:'wak3ajakar00'});
}
Cuando ejecuto el último código, termino con un documento en db.col colección con una clave llamada ID
además de una _id
creada de forma estándar, en contraposición a solo una clave _id
con el valor wak3ajakar00
. Esto me lleva a pensar que no es posible hacerlo directamente.
En cambio, ahora estoy apenas crear el documento que quiero insertar antes de tiempo de la siguiente manera:
db.createCollection('col', function(err, col){
var ID = 'wak3ajakar00';
var key = '_id';
insertion = {}
insertion[key] = ID;
col.insert(insertion);
}
Esto funciona exactamente como yo quiero que, pero yo sólo quería saber si hay mejores formas de hacerlo. JavaScript, NodeJS y MongoDB son nuevos para mí, por lo que siento que podría extrañar algo fácilmente. Si no, ¿hay alguna manera más clara de escribir el código anterior en JavaScript?
mejores, y gracias,
Sami
Posible duplicado de [¿Cómo agrego una propiedad a un objeto JavaScript usando una variable como nombre?] (Http://stackoverflow.com/questions/695050/how-do-i-add-a-property- to-a-javascript-object-using-a-variable-as-the-name) –