2017-08-29 4 views
0

Lorsqu'un utilisateur partage un post, je veux être en mesure de lui donner un point de récompense pour ce faire. J'appelle la fonction de nuage de xcode comme ceci.Le code cloud du serveur d'analyse récupère et met à jour un objet

PFCloud.callFunction(inBackground: "shares", withParameters: ["objectID" : "z2pU3UDFrh"]) 

Je Hardcoded un ID d'objet pour l'instant juste pour vérifier si son fonctionnement. Voici ma fonction de code de nuage qui est appelé

Parse.Cloud.define("shares", function(request, response) { 

    var shareQuery = new Parse.Query("Parse.POSTS"); 
    shareQuery.get(request.params.objectID, { 
     success: function(object) { 
     console.log(object) 
     object.increment("score"); 
     object.save(); 
     }, 
     error: function(error) { }, 
     useMasterKey: true 
    }); 

    }); 

quand je vérifie les journaux qu'il imprime "undefined" et le score reste inchangé

+0

Comment la table nommée? 'POSTS' (comme convention, vous devriez utiliser camel-case)? – nathan

+0

oui il est nommé POSTS – user6520705

Répondre

0

Remplacer var shareQuery = new Parse.Query("Parse.POSTS"); avec
var shareQuery = new Parse.Query("POSTS");

Parse.Cloud.define("shares", function(request, response) { 

    var shareQuery = new Parse.Query("POSTS"); 
    shareQuery.get(request.params.objectID, { 
     success: function(object) { 
     console.log(object) 
     object.increment("score"); 
     object.save(); 
     }, 
     error: function(error) { 
     console.error(error) 
     }, 
     useMasterKey: true 
    }); 

    }); 
+0

cela semble avoir fonctionné, mais je reçois maintenant une erreur dans les journaux disant objet introuvable quand en fait il existe et objet avec cet objectId – user6520705

+0

Activer le mode VERBOSE, il pourrait aider à aller vers le bas du problème – nathan

+0

https://stackoverflow.com/questions/25622991/getting-data-from-object-id-in-parse-com vous avez manqué. whereEqualTo voir accepté sur le lien –