Я пока не нашел ответа (как своими силами, так и в Интернете).Обновления записи не сохраняются в базе данных mongo (nodejs + mongo)
Это фрагмент кода NodeJS и использует mongodb в бэкэнд.
В коде я перебираю коллекцию (mongo) и обновляю определенное поле в каждой записи.
Не удается сохранить, внести изменения в запись в базу данных.
Код: -
var mongoose = require('mongoose')
;
var Centers = mongoose.model('centers', new mongoose.Schema({
"ChestClinic": String,
"TestCenterName": String,
...
"loc": {
"type": {
"lon": Number,
"lat": Number
},
"index": '2d'
}
});
mongoose.connect("mongodb://localhost/tblabsdb");
Centers.find({}, function(err, recs) {
var me = this
;
async.forEachSeries (recs, function(rec, callback) {
var loc = { lon: 100, lat: 100 };
rec.setValue ('loc', loc);
rec.save (function (err, rec) {
if (!err) {
console.log(rec);
} else {
console.log ('Error while saving');
}
callback();
});
}, function(err) {
console.log ('\ncomplete');
process.exit();
});
})
Когда я открываю эту базу данных в оболочке с помощью команды Монго, значения, которые я вижу в «LOC» по-прежнему 0, 0 (вместо 100100).
Оцените любые предложения по его фиксации.
Благодаря Морской
Это может быть проблема с закрытием, когда вы пытаетесь сделать один запрос внутри другого без обещаний. –