Wie liest man verschachtelte JSON-Strukturen mit einem Sencha Touch Data Model?

8

Ich habe den ganzen Abend versucht, das herauszufinden, aber ohne Erfolg. Ich habe eine JSON-Struktur wie folgt (kommt von einem anderen System, so dass ich seine Struktur nicht ändern kann):

%Vor%

Ich kann jedoch nicht herausfinden, wie die richtige Struktur für die Datenmodelle aussehen sollte. Ich habe Folgendes versucht, aber es funktioniert nicht. Übrigens kann ich auf die Elterninformationen zugreifen. Das Problem besteht darin, auf die untergeordneten Informationen zuzugreifen. Also, ich denke, es stimmt etwas nicht damit, wie ich die Beziehungsdaten eingerichtet habe.

%Vor%

mit einem Datenspeicher:

%Vor%

Ich verwende die folgende Vorlage, die mir die Elterninformationen holt, aber ich kann die Kinddaten davon nicht erhalten:

%Vor%

Was mich beschäftigt, ist die Tatsache, dass die Elemente "child" und "parent" jeweils von einem anderen Element "children" und "eltern" umgeben sind.

Jede Hilfe sehr geschätzt.

Vielen Dank im Voraus,

Philip

PS Wenn ich das äußere "children" -Wickelelement entferne und einfach das innere "child" -Element belasse (und in der Modelldefinition "children.child" in "child" ändere), funktioniert der Code einwandfrei.

PPS Ich beantworte meine eigene Frage:

Doh! Ich habe vergessen, das "children" -Element zu den Feldern des ParentModels hinzuzufügen.

Es sollte wie folgt sein (Anmerkung: Ich musste nicht die Elemente 'hasMany' oder 'associations' angeben - nicht zu sicher, warum dies der Fall ist oder welchen Nutzen es hat, sie einzubeziehen):

%Vor%

Die Vorlage funktioniert auch:

%Vor%     
Philip Murphy 09.10.2011, 23:48
quelle

2 Antworten

7

Ich habe einen Konverter hinzugefügt, damit die Vorlage konsistent auf die Daten im Modell zugreifen kann, unabhängig davon, ob ein einzelnes Objekt oder ein Array zurückgegeben wird.

%Vor%

Hinweis: Ich muss das ChildrenModel eigentlich nicht definieren. Ich denke, ich kann davonkommen, ohne es zu definieren, da Sencha automatisch konvertiert werden muss.

    
Philip Murphy 21.10.2011, 10:03
quelle
11

Bin vor kurzem in ein ähnliches Problem geraten..ich denke.

Sie müssen die Zuordnung zu den Daten in Ihrem Modell angeben. Zum Beispiel:

%Vor%

});

verbraucht dieses JSON:

%Vor%

},

mwrf 10.10.2011 18:08
quelle

Tags und Links