2015-09-12 48 views
3

的CloudCode功能是:解析CloudCode功能不起作用。調用它時我得到一個錯誤

Parse.Cloud.define('addFriend', function(request, response) { 
    var userId = request.params.userId; 

    var User = Parse.Object.extend('_User'), 
     user = new User({ objectId: userId }); 

    var currentUser = request.user; 

    var relation = user.relation("Friends"); 
    relation.add(currentUser); 

    Parse.Cloud.useMasterKey(); 
    user.save().then(function(user) { 
     response.success(user); 
    }, function(error) { 
    response.error(error) 
    }); 
}); 

當我與PFCloud電話呼叫從Xcode中....我得到下一個錯誤在我的控制檯:

[Error]: ReferenceError: parent is not defined 
at e.n.value (Parse.js:13:7510) 
at main.js:10:14 (Code: 141, Version: 1.8.2) 

這意味着實際的問題是關係沒有父母。它應該已經有'用戶'變量作爲父項,因爲我調用user.relation(「好友」),這就是文檔所說的:「你很少應該手動設置父項,因爲你很可能打電話給Parse.Object.relation( '鍵')。」這是我正在做的。

UPDATE

即使是這個代碼是給予相同的錯誤:

Parse.Cloud.define("addFriend", function(request, response) { 
    Parse.Cloud.useMasterKey(); 

    var currentUser = request.user; 
    var relation = currentUser.relation("Friends"); 
    relation.add(currentUser); 
}); 

更新2:

用戶JSON

{ 
    "FriendRequests": { 
    "__type": "Relation", 
    "className": "_User" 
}, 
    "Friends": { 
    "__type": "R‌​elation", 
    "className": "_User" 
}, 
"createdAt": { 
    "__type": "Date", 
    "iso": "2015-09-10T17:29‌​:03.181Z" 
}, 
"sessionToken": "r:KkmTu7xRjTEFpl0vcANVf0xXH", 
"updatedAt": { 
    "__type": "Dat‌​e", 
    "iso": "2015-09-10T17:29:03.181Z" 
}, 
"username": "bogdan12", 
"objectId": "BmbNRxCyau‌​" 

}

RELA重刑JSON

{ 
    "__type": "Relation", 
    "className": "_User" 
} 

回答

1

嘗試更換:

var User = Parse.Object.extend('_User'), 
    user = new User({ objectId: userId }); 

有了:

user = new Parse.User.createWithoutData(userId); 

編輯:

它正常工作與我...這裏是我的嘗試:

雲:

Parse.Cloud.define('addFriend', function(request, response) 
{ 
    var currentUser = request.user; 
    var userId = request.params.userId; 
    var user = new Parse.User.createWithoutData(userId); 

    var relation = user.relation("Friends"); 
    relation.add(currentUser); 

    Parse.Cloud.useMasterKey(); 
    user.save().then(function(user) { 
     response.success(user); 
    }, function(error) { 
     response.error(error) 
    }); 
}); 

客戶:

[PFCloud callFunctionInBackground:@"addFriend" withParameters:@{@"userId":@"s8BMHtnqSZ"} block:^(id object, NSError *error) { 
    if (!object || error) { 
     LogError(error, @"Calling addFriend failed."); 
    } else { 
     LogInfo(@"Calling addFriend succeeded."); 
    } 
}]; 

也許你應該提交錯誤報告在這裏:https://www.parse.com/help

+0

它不工作。 –

+0

在編輯關係之前,您可能需要首先獲取用戶。 – deadbeef

+0

這是否也是...同樣的錯誤 –

相關問題