2017-12-15 4 views
0

nicht anzeigen Ich möchte Datensätze aus dem Datenspeicher Ember.js in der Vorlage Meine anzeigen. In meinem Controller habe ich den folgenden Code:Kann Datensätze aus Ember.js Daten in Vorlage

orders: null, 

[...]

openOrderModal: function(name) { 
    $('.ui.' + name + '.modal').modal('show'); 
    var orders = this.get('store').peekAll('orders'); 
    console.log(orders); 
    this.set('orders', orders); 
}, 

peek ich alle Datensätze aus dem Datenspeicher und einer Variablen speichern. In der Vorlage habe ich eine Schleife. Aber es funktioniert nicht.

{{#each orders as |order|}} 
    {{order.id}} {{order.supply_id}} 
{{/each}} 

Können Sie mir helfen?

Mit freundlichen Grüßen

+0

_Was funktioniert genau nicht? Können Sie bestätigen, dass die Funktion aufgerufen wird? Wenn ja, protokolliert er die erwarteten Bestellungen? Gibt es etwas anderes vom Modal? (Und warum ist das '$ ('...' da?) –

+0

Ich sehe mir ein anderes Modell an. Und es hat funktioniert. Ich denke, das Problem ist, dass die Daten im Ember-Datenspeicher im Ember-Inspektor grün gefärbt sind nicht gespeichert –

+0

Wenn ich versuche: this.get ('speichern') peekAll ('orders'). findBy ('isNew', true); das Array "orders" ist leer –

Antwort

0

peekAll nur Datensätze zurück, die bereits im Speicher sind. Wenn Sie keine Aufträge anderswo geladen haben (wie in Ihrer Route, wo Datensätze geladen werden sollen), wird eine leere Liste zurückgegeben. It should include unsaved, just created records des entsprechenden Modells jedoch.

findAll das Verfahren ist das Geschäft machen API-Aufrufe, sondern gibt ein Versprechen zu machen, dh Sie können mit den abgerufenen Datensätzen in der then Methode zu tun haben (es sei denn, Sie model Haken sie in Ihrer Route laden, zurück Versprechen eingegangen wird mit angemessen).

Verwandte Themen