2015-10-10 15 views
5

Sto cercando di recuperare i dati da una tabella denominata Book. All'interno di Book c'è uno Pointer<ParseUser> che contiene il puntatore di un utente. Lo ParseUser ha un altro puntatore chiamato Pais (che significa Paese in spagnolo). Quindi voglio prendere ogni singolo informazioni da qualsiasi Book:SDK Javascript Parse.com utilizzando include, ma non funziona

var query = new Parse.Query("Book"); 
query.include("user"); 
query.include("user.pais"); 
query.find({ 
success: function(books) { 
     response.success(books); 
}, 
error: function(error) { 
    response.error({'resp': error.code, 'message': error.message}); 
} 
}); 

e non ho ricevuto gli oggetti, solo i puntatori:

enter image description here

Perché? So che funziona bene quando lo chiamo in iOS o Android con include(String key) o includeKey: NSString* key.

Perché non funziona con Javascript ??

Grazie in anticipo.

Saluti.

Rafael.


EDIT:

Oh, e ho solo dimenticato ... ho provato con:

query.include(["user"]);

e

query.include(["user", "user.pais"]);

Ho visto alcuni esempi in cui gli sviluppatori lo hanno usato.


SECONDO EDIT:

L'ultima cosa che ho usato è fetch come:

Parse.Object.fetchAll(books, { 
           success: function(list) { 
            response.success(list); 
           }, 
           error: function(error2) { 
            response.error({'resp': error2.code, 'message': error2.message}); 
           }, 
           }); 

Ma non ha funzionato neanche.

Questo sta iniziando a farmi impazzire.


NOSTRA SOLUZIONE: La soluzione che stiamo cercando di fare è andare a prendere tutto a parte, e poi tornare indietro per l'utente insieme. Questa non è una buona pratica poiché un piccolo cambiamento nella classe in un futuro rovinerebbe l'intera funzione.

Si tratta di un bug nell'SDK?

+0

IMO l'inclusione potrebbe non essere transitiva nel modo in cui si desidera che sia. Se i puntatori sono TUTTI nella tabella che è il genitore o la destinazione della query, include nell'elenco [i puntatori] funzionerà –

+0

Quindi, come posso recuperarli come faccio in Android SDK o iOS SDK? –

+0

Solo un pensiero perché recentemente ho avuto un problema con CloudCode che è abbastanza simile al tuo. Quale versione dell'SDK JavaScript stai utilizzando? Ho risolto [il mio problema] (http://stackoverflow.com/a/32705381/4988014) cambiando la versione in 1.4.2. È solo un colpo al buio nel tuo caso, ma potrebbe funzionare. –

risposta

1

(Questo è un commento trasformato in una risposta)

Solo un pensiero perché di recente ho avuto un problema con CloudCode che è abbastanza simile al tuo. Quale versione dell'SDK JavaScript stai utilizzando? Ho risolto il mio problema cambiando la versione in 1.4.2. È solo un colpo al buio nel tuo caso, ma potrebbe funzionare.

Here è il thread in cui ho descritto il problema e come risolverlo modificando la versione dell'SDK.