2016-08-18 4 views
0

So kann ich nicht scheinen, um die Ergebnisse zu erhalten, die ich will, also bitte ich um Ihre freundliche Hilfe darauf. Stellen Sie sich eine MongoDB-Datenbank aufgebaut für mehrsprachige Inhalte, etwa wie folgt:MongoDB Erhalten mehrere Objekte mit dem gleichen Namen in Objekten mit anderem Namen:

"info": { 
    "en": { 
     "greetings": { 
      "hello":"hello", 
      "goodbye":"goodbye" 
     }, 
     "directions": { 
      "left": "left", 
      "right": "right" 
     } 
    }, 

    "pt": { 
     "greetings": { 
      "hello":"olá", 
      "goodbye":"adeus" 
     }, 
     "directions": { 
      "left": "esquerda", 
      "right": "direita" 
     } 
    } 
} 

Nun, wenn ich um abfragen möchten Objekt, um die Wegbeschreibung zu bekommen in Englisch und Portugiesisch, aber nicht die Grüße, wie soll ich es tun ?

Wenn es hilft, ist mein Ziel, genau diesen Inhalt auf einer Schablone der Meteor-App zu abonnieren, also keine Notwendigkeit für alle anderen Objekte in einem bestimmten Sprachobjekt, nur die, die ich für eine bestimmte Vorlage brauche.

Vielen Dank im Voraus!

+0

Ich schlage vor, Sie Ihre Dokumentstruktur ändern dann [Update MongoDB Feld einer anderen Verwendung Wert] (https://stackoverflow.com/questions/3974985/update-mongodb-field-using-value-of-another- Feld) – styvane

Antwort

0

Wie wäre es, wenn Sie iterieren?

db.collection.find().forEach((language){ 
    some code here 
}) 
+2

Ist das nicht eine extrem "teure" Aktion für den Datenbankserver? –

Verwandte Themen