我正在尝试运行以下代码:
exports.updateProfile = function(req, res) {
var Profile = Parse.Object.extend("Profile");
var query = new Parse.Query(Profile);
query.equalTo("username", req.body.username);
query.first({
success: function(Profile) {
Profile.save(null, {
success: function(profile) {
profile.set(req.body, { //It breaks here...
success: function(object) {
res.send({"error":"none"});
},
error: function (object, error) {
res.send({"error":"Error: " + error.code + " " + error.message});
}
});
},
error: function (object, error) {
res.send({"error":"Error: " + error.code + " " + error.message});
}
});
},
error: function (object, error) {
res.send({"error":"Error: " + error.code + " " + error.message});
}
});
}
但是,在“It breaking here”行中都没有调用成功或错误方法。使用Node.js更新Parse行的任何想法或更好的方法?感谢。
答案 0 :(得分:0)
exports.updateProfile = function(req, res) {
var Profile = Parse.Object.extend("Profile");
var query = new Parse.Query(Profile);
query.equalTo("username", req.body.username);
query.first().then(function(Profile){
Profile.set("columnName", value);//value might be you are getting from req.body
Profile.save().then(function(saved){
res.send({"error":"none"});
}, function(error){
res.send(error);
});
}, function(error){
res.send(error);
});
}
这可能是你要找的东西。尝试这种方法希望它会有所帮助。您正在保存尚未修改的对象,这可能是它没有进入回调方法的原因。重构代码以删除无效的保存调用。