si tengo dos esquemas como:
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}],
});
Traté de conectarlos como en el ejemplo anterior, pero no pude averiguar cómo hacerlo. Eventualmente, si puedo hacer algo como esto, mi vida sería muy fácil.
var profilePic = Post.postedBy.profilePic
javascript
mongodb
mongoose
Gorkem Yurtseven
fuente
fuente
by:
selectropopulate
: mongoosejs.com/docs/populate.htmlApéndice: Nadie mencionó "poblar" --- vale mucho la pena su tiempo y dinero mirando Mongooses Populate Método: también explica las referencias cruzadas de documentos
http://mongoosejs.com/docs/populate.html
fuente
Respuesta tardía, pero agregando que Mongoose también tiene el concepto de Subdocumentos
Con esta sintaxis, debería poder hacer referencia a su
userSchema
como un tipo en su mepostSchema
gusta así:Tenga en cuenta el
postedBy
campo actualizado con tipouserSchema
.Esto incrustará el objeto de usuario dentro de la publicación, lo que guardará una búsqueda adicional requerida mediante el uso de una referencia. A veces esto podría ser preferible, otras veces la ruta ref / populate puede ser el camino a seguir. Depende de lo que esté haciendo su aplicación.
fuente