2013-04-09 9 views
12

Moja aplikacja osadza początkowe dane w html, aby Ember nie musiał wysyłać dodatkowych żądań http podczas inicjalizacji. Korzystam z najnowszych danych Ember i nie udało mi się z powodzeniem wziąć obiektu JSON, który jest taki sam, jak Active Model Serializer powraca po zapisaniu lub utworzeniu rekordu i załadowaniu go do sklepu.Ładowanie obiektu JSON do danych Ember, np. Osadzanie JSON na stronie podczas ładowania i zapełnianie sklepu

Obecnie próbuję tych metod bez powodzenia:

W trasie -

this.get('store').load(App.Post, data) 

i

this.get('store').loadMany(App.Post, data) 

Używam również Pusher że wysyła mi JSON (generowane przez Aktywny Model Serializer) dla zaktualizowanego obiektu, a wywołanie zwrotne na mojej trasie wygląda obecnie tak.

refresh: function(data) { 
    var json = data 
    var store = this.get('store') 
    var type = App.Post 
    var id = data.reply.id 
    Ember.run(this, function(){ 
    store.adapterForType(App.Post).didFindRecord(store, type, json, id); 
    }); 
} 

Czy ktoś z powodzeniem to zrobił? Wiem, że Dyskurs nie używa Ember Data, więc ich rozwiązanie jest inne. Naprawdę doceniam każdą pomoc w tej sprawie. Dzięki

Odpowiedz

7

Te pytania zostały omówione gdzie indziej. Mam zamiar dać wskazówki do innych dyskusji, dzięki czemu można śledzić wraz z rozmowy jak ludzie poprawić aktualne odpowiedzi:

1
actions: { 
    save() { 
    let json = this.get('json'); 
    json.id = '123123'; // id is required in order to use store.push 
    let store = this.get('store'); 
    this.set('myModel', store.push(store.normalize('myModel', json))); 
    } 
} 
+0

Dziękujemy za ten fragment kodu, który może zapewnić natychmiastową pomoc. Właściwe wyjaśnienie [znacznie się poprawi] (// meta.stackexchange.com/q/114762) jego wartość edukacyjna poprzez pokazanie * dlaczego * jest to dobre rozwiązanie problemu i sprawiłoby, że byłoby ono bardziej użyteczne dla przyszłych czytelników z podobnymi, ale nie identyczne, pytania. Proszę [edytuj] swoją odpowiedź, aby dodać wyjaśnienie i podać, jakie ograniczenia i założenia mają zastosowanie. –

Powiązane problemy