Czy istnieje sposób na użycie kluczy dynamicznych ze sterownikiem macierzystym-mongodb? Mam na myśli to, że mając zmienną przytrzymaj klucz zamiast bezpośrednio używać klucza.Czy istnieje sposób użycia klucza dynamicznego z węzłem-mongodb-native?
jak w przypadku należałoby normalnie to zrobić:
db.createCollection('col', function(err, col){
col.insert({'_id':'wak3ajakar00'});
}
to zrobić w zamian:
db.createCollection('col', function(err, col){
var ID = '_id';
col.insert({ID:'wak3ajakar00'});
}
Kiedy uruchomić ten drugi kod, ja skończyć z dokumentu w kolekcji db.col z kluczem o nazwie ID
oprócz standardowo utworzonego _id
, w przeciwieństwie do klucza _id
o wartości wak3ajakar00
. To prowadzi mnie do przekonania, że nie jest to możliwe bezpośrednio.
Zamiast tego mam teraz tylko tworzenie dokumentu, który chcę wstawić z wyprzedzeniem, co następuje:
db.createCollection('col', function(err, col){
var ID = 'wak3ajakar00';
var key = '_id';
insertion = {}
insertion[key] = ID;
col.insert(insertion);
}
Działa to dokładnie tak, jak chcę go, ale ja po prostu chciałem wiedzieć, czy istnieją lepsze sposoby na rozwiązanie tego problemu. JavaScript, NodeJS i MongoDB są dla mnie zupełnie nowe, więc czuję, że mogłem łatwo coś przegapić. Jeśli nie, czy są jakieś czystsze sposoby napisania powyższego kodu w JavaScript?
najlepsze, a dzięki,
Sami
Możliwy duplikat [Jak dodać właściwość do obiektu JavaScript przy użyciu zmiennej jako nazwy?] (Http://stackoverflow.com/questions/695050/how-do-i-add-a-property- to-a-javascript-object-using-a-variable-as-the-name) –