解析 - 在beforeSave上修改PFObject?

时间:2014-05-20 02:15:39

标签: parse-platform

在系统中创建使用时,我想为它们创建空白配置文件。 以下代码似乎不起作用,我缺少什么?

我没有在日志中看到任何错误,并且成功创建了配置文件。

Parse.Cloud.beforeSave("User", function(request, response) {
    if (request.object.get("profile") == null) {
        request.object.fetch().then(function(user){
            var Profile = Parse.Object.extend("Profile");
            var profile = new Profile();
            user.set("profile", profile);
            response.success();
        });
    }
    else {
        response.success();
    }
});

2 个答案:

答案 0 :(得分:1)

如果您尝试" _用户"会发生什么?我非常确定Parse是如何设置他们的User类的。像这样:

Parse.Cloud.beforeSave("_User", function(request, response) {
    if (request.object.get("profile") == null) {
        request.object.fetch().then(function(user){
            var Profile = Parse.Object.extend("Profile");
            var profile = new Profile();
            user.set("profile", profile);
            response.success();
        });
    }
    else {
        response.success();
    }
});

答案 1 :(得分:1)

在这种情况下,您似乎需要首先保存个人资料:

Parse.Cloud.beforeSave("_User", function(request, response) {
    if (request.object.get("profile") == null) {
        request.object.fetch().then(function(user){
            var Profile = Parse.Object.extend("Profile");
            var profile = new Profile();
            return profile.save();
        }).then(function(profile) {
            user.set("profile", profile);
            response.success();
        });
    }
    else {
        response.success();
    }
});