Jestem nowy w Mongoose/nodejs i zmagam się z prostą aktualizacją tablicy w tablicy.Jak zaktualizować mangustę?
Oto schemat:
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"},
});
A oto kod Aktualizacja Próbowałem:
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...
});
Podczas tego błędu ERR mówi „Nie można dołączyć do tablicy za pomocą nazwa pola ciągów 'counties' ". Co to znaczy? Co ja robię źle?
Ok. Czy nie ma alternatywnego sposobu aktualizowania zagnieżdżonej tablicy bez konieczności ponownego definiowania schematu? – tremolo
@tremolo: może, ale nie musi (moja Mongoose-fu jest wciąż słaba), ale uważam, że dobrą praktyką jest definiowanie schematu "Kraju". – Ashe
@tremolo: czy mógłbyś zaktualizować swoje pytanie nowym kodem? – Ashe