Il risultato di un find
è una matrice di record. Probabilmente volevi scorrere quei record in questo modo:
Person.find({ uid: /19524121/ }).select('name').exec(function(err, data){
for(var i = 0; i < data.length; i++) {
var myData = new Person(data[i]);
myData.name = "try to save me now";
myData.save(); // It works now!
}
}
Inoltre, dalla homepage di mongoose
, sembra che il prototipo di callback della funzione sia function(err, data)
, non il contrario, che hai corretto sopra.
Guarda questo dalla home page:
var fluffy = new Kitten({ name: 'fluffy' });
Se data[0]
attualmente ha un oggetto JSON regolare, abbiamo bisogno di una linea come questa per convertire in un oggetto modello BSON.
var myData = new Person(data[0]);