Ember在另一个控制器中获取排序内容

时间:2013-06-11 21:39:36

标签: ember.js

我有一个Ember.ArrayController从路线获取它的模型并应用一些排序 示例:

App.IndexRoute = Ember.Route.extend({
model: function() {
    return [Ember.Object.create({id: 23, name: "John"}),
            Ember.Object.create({id: 534, name: "Warren"}),
            Ember.Object.create({id: 234, name: "Katy" })
     ];
  }
});

App.IndexController = Ember.ArrayController.extend({
    sortProperties: ["id"],
    sortAscending: true

});

当我调用对应模板并循环通过IndexController时,已排序的内容将按预期显示 但是,如果我使用this.get("controllers.index.content");在另一个控制器中检索此控制器的内容并将其显示在其模板中,则不会应用排序。这是为什么?我认为this.get("controllers.index.content");将检索与原始控制器检索的content相同的{{1}},因此,排序的内容。我怎么能在另一个控制器上检索相同的排序内容呢? 这是一个例子jsfiddle
谢谢!

1 个答案:

答案 0 :(得分:1)

对已排序的内容使用arrangeContent属性而不是内容:

this.get("controllers.index.arrangedContent");