Soy nuevo en Mongoose/nodejs y estoy luchando con una simple actualización de una matriz dentro de una matriz.¿Cómo actualizar en mangosta?
He aquí el esquema:
var County = new Schema({
_id : Schema.ObjectId,
name : String,
biggestCity : String
});
var Country = new Schema({
_id : Schema.ObjectId,
name : String,
counties : {type: [County], ref: "County"}
});
var Continent = new Schema({
_id : Schema.ObjectId,
countries : {type: [Country], ref: "Country"},
});
Y aquí está el código de actualización que he estado tratando:
var continents = mongoose.model("Continent");
var update = { "countries.counties.name": newName, "countries.counties.biggestCity": newBiggestCity };
var conditions = { "_id": countryId, "countries.name": countryName, "countries.counties.name": countyName };
var options = { multi: false };
wagers.update(conditions, update, options, function(err, numAffected) {
//callback code...
});
Al hacer esto, el error en err dice "No se pueden agregar a la matriz usando string field name 'condados' ". ¿Qué significa esto? ¿Qué estoy haciendo mal?
Ok. ¿No hay alguna forma alternativa de actualizar la matriz anidada, sin tener que volver a definir el esquema? – tremolo
@tremolo: puede o no puede haber (mi Mongoose-fu todavía es débil), pero creo que es una buena práctica definir un esquema para 'País' de todos modos. – Ashe
@tremolo: ¿podría actualizar su pregunta con el nuevo código? – Ashe