Я хочу, чтобы понять, что правильный способ обновить экземпляр модели, с использованием мангуста, то есть:Обновления экземпляра модели
Наличие:
User = {
username: {
type: String,
indexed: true
},
email: {
type: String,
indexed: true
},
name: String,
.........
};
Я посылаю всю форму через Аякс контроллер.
До сих пор, я знаю два варианта:
app.put('/users/', function(req, res){
var id = ObjectId(req.body._id);
User.findOne({_id: id}, function(err, user){
user.name = req.body.name;
....
....
user.save();
});
});
или:
app.put('/users/', function(req, res){
var id = ObjectId(req.body._id);
delete req.body._id
User.update({_id: id}, req.body, function(err){
.....
};
});
Оба способа имеют недостатки:
В первом подходе я должен отобразить все свойства по одному;
Во втором подходе я должен удалить все свойства, которые нельзя изменить;
есть третий возможный подход, который заставит меня отправлять с клиентской стороны только измененные свойства, но я думаю, что это будет большой проблемой.
Есть ли хороший, стандартизованный способ, который я не вижу, чтобы сделать это?
Благодаря
лицу, проголосовавшему: по крайней мере, вы могли бы объяснить свой голос в комментарии ... –