错误111,正在编辑字段值

parse.com error 111, editing field value

本文关键字:编辑 字段 错误      更新时间:2023-09-26

我试图在Parse上更新一个字段,但我得到一个错误111:预期的地图,但得到字符串。

这是我的代码:

var Item = Parse.Object.extend("user");
$("#saveNewBudgetAmount").click(function(){
    var newBudget = $("#newBudgetSum").val();
    var currentUser = Parse.User.current();
    var newItem = new Item();
    var query = new Parse.Query(Item);
    newItem.set("budget",newBudget);
    query.equalTo("user", currentUser);

    newItem.save(null, {
        success: function() {
            location="MainPage.html";
        },
        error: function(user, error) {
            alert("Error: " + error.code + " " + error.message);
        }
    });

字段"预算"在"用户"类是一个字符串类型,所以我不明白我做错了什么。

由于您只是查询当前用户,因此您可以简单地使用:

var newBudget = $("#newBudgetSum").val();
var currentUser = Parse.User.current();
currentUser.set("budget", newBudget);
currentUser.save(null,
{
    success: function(user) {
        alert("new name is: " + user.get("name"));
    },
    error: function(error) {
        alert("error: " + error.code +" "+error.message);
    }
});

或者更好:

var newBudget = $("#newBudgetSum").val();
var currentUser = Parse.User.current();
currentUser.save(
    {
    // Set as many properties as you like in this field, 
    // think of it as a JSON object except you don't 
    // have to enclose the values in strings.
    budget : newBudget,
    }, {
    success: function(user) {
        alert("new name is: " + user.get("name"));
    },
    error: function(error) {
        alert("error: " + error.code +" "+error.message);
    }
});

我的代码是这样写的:

$("#saveNewBudgetAmount").click(function(){
    var User = Parse.User.extend("User");
    var query = new Parse.Query(User);
    var newBudget = $("#newBudgetSum").val();
    query.equalTo("objectId", Parse.User.current().id);
    query.first({
        success: function (User) {
            User.save(null, {
                success: function (user) {
                    User.set("budget", newBudget);
                    User.save();
                    location = "Mainpage.html";
                }
            });
        }
    });
});