Si tengo dos modelos, con una relación has_many
en Mongoose ODM. es decir. Usuario pertenece al Equipo, y el equipo tiene muchos usuarios:¿El ODM de mangosta le permite guardar ambos lados de una asociación fácilmente?
var User = new Schema({
username : {type: String, required: true },
email : {type: String, required: true},
team : { type: Schema.ObjectId, ref: 'Team'},
created_at : {type : Date, default : Date.now},
updated_at : {type : Date, default : Date.now}
});
var exports = module.exports = mongoose.model('User', User);
y
var Team = new Schema({
name : {type: String, required: true},
users : [{ type: Schema.ObjectId, ref: 'User'}],
created_at : {type : Date, default : Date.now},
updated_at : {type : Date, default : Date.now}
});
var exports = module.exports = mongoose.model('Team', Team);
... ¿hay alguna manera de saber Mangosta para agregar la user
a la colección de team.users
user.save({team: team, ...})
? ¿o solo tengo que usar el middleware save()
en el modelo de Usuario?
La razón por la que pregunto es que este no es uno de los casos de uso cubiertos por los documentos de Mongoose y esta funcionalidad es bastante estándar en la convención de monovolúmenes/mongoid.
Sí, tengo. He encontrado que incrustado tiene sentido cuando las entidades no existen sin el padre. También me ha resultado mucho más difícil hacer consultas de datos incrustados de forma explícita. – justinjmoses