2016-08-29 9 views
0

これは、通常のJS/AJAXで行うのは簡単だろうが、私はこのエンバーの方法(V2.6)を学び、やろうとしています:エンバーモデル/ルート/テンプレートの設定

私はURL /datesを持っており、このページには2つのカレンダーがあります。ページが読み込まれると、サーバーにリクエストが送信され、カレンダー1で事前選択する日付が取得されます。応答は良好ですが、日付はテンプレートに表示されません。

/templates/dates.hbs:

Preselect: [{{model.preselect}}] //this is outputting: Preselect: [] 

/routes/dates.js:

import Ember from 'ember'; 

export default Ember.Route.extend({ 
    model(){ 
    return this.get('store').findAll('my-date').get('firstObject'); 
    } 
}); 

/models/my-date.js:

import Model from 'ember-data/model'; 
import attr from 'ember-data/attr'; 

export default Model.extend({ 
    preselect: attr() 
}); 

サーバーの応答:

{"myDates":{"id":1,"preselect":"2016-10-02"}} 

後でカレンダー2のリクエストが増えますが、カレンダー1でスタックされています。

モデルデータがページに表示されないのはなぜですか?エバーインスペクタにエラーはありません。モデルはemberインスペクタに適切なデータとともに表示されます。

ありがとうございます。

+0

ありがとうございました。答えとして入れて、私はそれを受け入れるでしょう。 –

答えて

1

findAllは約束します。それを処理することはできませんので、thenを使用して結果を処理してください。

以下が有効です。

関連する問題