3

2 つのテンプレートにデータを入力しています。最初のテンプレートにはモデルに関する詳細情報 (Slider と呼ばれます) があり、2 番目のテンプレートには最後の 5 つのスライダーのリストがあります。

問題は、結果に objectAt(0) を使用すると、モデルがテンプレートに正しく適用されないことです。リストを含む他のテンプレートにデータが取り込まれます。私が意味するのはこれです:

App.IndexRoute = Ember.Route.extend({
  setupController: function() {
    var sliders = App.Slider.find({ limit: 5 });

    this.controllerFor('indexSlider').set('model', sliders.objectAt(0));
    this.controllerFor('indexSliders').set('model', sliders); // this works fine and loads the data into the template
  }
});

そのコードは機能しません。ただし、 indexSlider モデルを次のように置き換えると機能します。

App.IndexRoute = Ember.Route.extend({
  setupController: function() {
    var sliders = App.Slider.find({ limit: 5 });

    this.controllerFor('indexSlider').set('model', App.Slider.find(52));
    this.controllerFor('indexSliders').set('model', sliders);
  }
});

...ここで、52 は最初の結果の ID です。これにより、テンプレートでモデルをレンダリングするために objectAt が実際には正しく機能しないと思いますか、それとも間違っているのでしょうか?

4

1 に答える 1