Mam API JEST REST, który zwraca listę "dzienników". Istnieje wiele rodzajów dzienników, które implementują różne, ale podobne zachowania. Wdrożenie po stronie serwera to na warstwie danych jest rodzajem pojedynczej tabeli dziedziczenia, więc każda reprezentacja JSON dzienniku zawiera jego „type”:Kolekcja Backbone.js z wieloma podklasami modelu
[
{"type": "ULM", "name": "My uml logbook", ... , specific_uml_logbook_attr: ...},
{"type": "Plane", "name": "My plane logbook", ... , specific_plane_logbook_attr: ...}
]
chciałbym powielać ten model serwera po stronie klienta , więc mam baza Logbook
klasę i wiele klas dziennik Podtyp:
class Logbook extends Backbone.Model
class UmlLogbook extends Logbook
class PlaneLogbook extends Logbook
...
My Backbone.Collection
jest zbiorem Logbook
modeli, które mogę używać do kwerendy API JSON:
class LogbookCollection extends Backbone.Collection
model: Logbook
url: "/api/logbooks"
Kiedy pobiera się kolekcję dzienników, czy istnieje sposób na przesłanie każdego Logbook
do odpowiadającej mu klasy podrzędnej (na podstawie atrybutu "typ" JSON)?
Dziękuję za odpowiedź! Wiedziałem o istnieniu metody parsowania, ale nie wiedziałem, że wynik został przekazany bezpośrednio do metody resetowania ... Powinienem lepiej wykopać kod źródłowy! Thx again – Tricote
Twoja edycja za pomocą metody 'model' jest znacznie lepsza niż przy użyciu' parsowania', ponieważ, jak słusznie zauważyłeś, działa na 'reset'. W ten sposób, czy nowe modele przychodzą poprzez 'pobieranie 'lub bootstrapowane w HTML, to nadal działa. Dzięki! – philoye
Proponuję przesunąć w górę tę ostatnią część, aby ludzie mogli ją zobaczyć jeszcze więcej :) tylko myśl – corroded