Wie erstelle ich eine Sammlung mit mehreren Modelltypen in backbone.js?

7

Ich versuche, das zur Arbeit zu bringen, aber ich kämpfe damit. Meine Sammlung endet leer, wenn ich den success -Rückruf auf fetch überprüfe. Es gibt mir keine eindeutigen Fehler während parse . Hier ist mein Code:

Meine Sammlung:

%Vor%

So erstelle ich die Kollektion:

%Vor%

Wenn ich das Protokoll msg trenne, bekomme ich:     Objekt {Länge = 0, Modelle = [0], _byId = {...}, mehr ...}

Ich habe auch die parse -Funktion in der Sammlung geloggt und es läuft durch die JSON-Datei ganz gut ... irgendwelche Ideen, was hier falsch sein könnte? Die Länge des Objekts msg sollte 5..i.e sein. Das ist, wie oft die Funktion parse eine Schleife ausführt und (sollte) ein Modell zur Sammlung hinzufügen soll.

    
Joel 22.08.2011, 11:50
quelle

3 Antworten

18

Eine nette Möglichkeit, dies zu umgehen, ist das Attribut model neu zu definieren, das der Sammlung mitteilt, wie ein neues Modell zur Sammlung hinzugefügt wird, wie in diesem POST erläutert: Eine Backbone.js-Sammlung von mehreren Model-Unterklassen (danke @rulfzid, wer hat meine Frage beantwortet :) )

In Ihrem Fall sollten Sie in der Lage sein, die Modellattribute wie folgt zu definieren:

%Vor%     
Tricote 23.08.2011 11:35
quelle
1

Es wird besser sein, Ihre Gitterobjekte in verschiedenen Sammlungen zu speichern und sie mit einem Modell wie diesem zu umhüllen:

%Vor%     
ant_Ti 23.08.2011 04:24
quelle
0
%Vor%

Dies ist, was das Dokument sagt, sollten Sie in Parse tun. Was immer Sie zurückgeben, wird als Array zum Starten der Sammlung festgelegt. Dies ist, wo es heißt:

%Vor%

Also würde ich vorschlagen, Ihre Analyse zu ändern:

%Vor%     
Julien 22.08.2011 16:14
quelle