2016-11-28 1 views
0

Je voudrais savoir dans le code de nuage si la demande est l'ajout ou la suppression d'un élément d'une ParseRelation. Comment obtenir des informations de l'opération Parse. Pour l'instant je ne peux obtenir aucune information de Parse.Op.Comment utiliser Parse.Op dans le code du cloud?

pour i.e.: dans une méthode beforeSave():

var parseOp = myObject.op('myRelation'); 
if (parseOp != null) { 
    console.log("Operations on myRelation = " + parseOp.toJSON()); 
} 

dans le journal que cet affichage: Operations on myRelation = [object Object]

Il n'y a pas d'information dans la documentation Parse SDK. sur comment utiliser ParseOp.

Répondre

2

Vérifiez la question ici à ce sujet:
https://github.com/ParsePlatform/Parse-SDK-JS/issues/133

Si vous voulez continuer à utiliser .op vous pouvez essayer quelque chose comme ceci:

var parseOp = myObject.op('myRelation'); 
if (parseOp) { 
    console.log('array of objectIds to add', parseOp.relationsToAdd) 
    console.log('array of objectIds to remove', parseOp.relationsToRemove) 
    // do more things here 
} 

Note: vous pouvez passer plusieurs arguments à console.log(...) et les objets seront imprimés

+0

Merci, je vais vérifier cela. Puisque nous devrions éviter d'utiliser Parse.Op directement (selon votre lien), avez-vous une idée sur Comment incrémenter un compteur quand un objet est ajouté (ou supprimé) à partir d'un ParseRelation? – toofoo

+0

Vous pouvez incrémenter le compteur à chaque fois que vous ajoutez une relation. Ou vous pouvez lancer une recherche sur la relation et obtenir la longueur des résultats. – JeremyPlease

+0

L'incrément doit provenir du côté serveur pour l'intégrité des données: par exemple: lorsqu'un utilisateur aime un Post, il l'ajoute à son ParseRelation "aimé". Mais le nombre de J'aime pour ce post ne peut pas être incrémenté par l'utilisateur lui-même (pour éviter la triche). Je ne peux pas interroger une trouvaille et compter tout le temps aussi bien (un poste peut être aimé par plus de 10000 utilisateurs). – toofoo