ich eine einfache Abfrage, wie folgt:Parse Cloud-Code "erste" Abfrage Array liefert unterschiedliche Ergebnisse
var getGreaterQuestion = function (gid) {
var query = new Parse.Query(Parse.Object.extend("Question"));
query.equalTo("groupId", gid);
return query.first();
}
ich ein Array vorbereite dieser Funktion aus:
var groupIds = _.range(1, 17);
var groupIdAndRandomNumberPack = _.map(groupIds, function (gid) {
return {groupId: gid, random: Math.random()};
});
var pack = _.map(groupIdAndRandomNumberPack, function (queryItem) {
return getGreaterQuestion(queryItem.groupId, queryItem.random);
});
In pack
Array, Es gibt 16 verschiedene "erste" Abfragen für Question
Klasse.
Ich bin mit dieser Abfrage folgend Code-Schnipsel mit:
return Parse.Promise.when(pack).then(function() {
console.log("arguments : " + JSON.stringify(arguments));
...
...
);
Argumente das Ergebnis meiner Abfrage von Daten von MongoDB abgerufen werden.
Wenn ich diese Abfrage auf Parse-Backend laufen, Argumente json-Format ist wie folgt:
{
"0":{QuestionObject},
"1":{QuestionObject},
...
"16":{QuestionObject}
}
Wenn ich diese Abfrage auf meinem lokalen Parsing-Instanz mit MongoDB auf MongoLAB definiert laufen, es folgendes Ergebnis ergibt:
{
"0":[
{QuestionObject},
{QuestionObject},
....
{QuestionObject}
]
}
Was ist der Grund für diesen Unterschied? Gibt es irgendeine Konfiguration, die ich auf MongoDB anwenden oder Express-Anwendung parsen muss, um das gleiche Ergebnis zu erhalten, wie das Parsing-Backend gibt.
Autsch, ein "adaptives wenn()" fällt irgendwo zwischen großartig und verwirrend. Gewöhnungsbedürftig. –