Wenn ich zwei Schemata habe wie:
var userSchema = new Schema({
twittername: String,
twitterID: Number,
displayName: String,
profilePic: String,
});
var User = mongoose.model('User')
var postSchema = new Schema({
name: String,
postedBy: User, //User Model Type
dateCreated: Date,
comments: [{body:"string", by: mongoose.Schema.Types.ObjectId}],
});
Ich habe versucht, sie wie im obigen Beispiel miteinander zu verbinden, konnte aber nicht herausfinden, wie es geht. Wenn ich so etwas tun könnte, würde es mir schließlich das Leben sehr leicht machen
var profilePic = Post.postedBy.profilePic
javascript
mongodb
mongoose
Gorkem Yurtseven
quelle
quelle
by:
Selectropopulate
: mongoosejs.com/docs/populate.htmlNachtrag: Niemand hat "Populate" erwähnt - es ist Ihre Zeit und Ihr Geld sehr wert, sich die Mongooses Populate-Methode anzusehen: Erklärt auch das Verweisen auf Querverweise
http://mongoosejs.com/docs/populate.html
quelle
Späte Antwort, aber das Hinzufügen, dass Mungo auch das Konzept der Unterdokumente hat
Mit dieser Syntax sollten Sie in der Lage sein, auf Ihren
userSchema
Typ zu verweisenpostSchema
:Beachten Sie das aktualisierte
postedBy
Feld mit TypuserSchema
.Dadurch wird das Benutzerobjekt in den Beitrag eingebettet, und es wird eine zusätzliche Suche gespeichert, die mithilfe einer Referenz erforderlich ist. Manchmal ist dies vorzuziehen, manchmal ist die Ref / Populate-Route der richtige Weg. Hängt davon ab, was Ihre Anwendung tut.
quelle