在同一控制器上排序多个模型

时间:2014-08-25 09:16:33

标签: ember.js

有没有办法通过不同RSVP.hash的{​​{1}}对同一控制器上设置的多个模型进行排序?

这是路线代码:

sortProperties

如何在Application.SomeIndexRoute = Ember.Route.extend({ model: function() { return Ember.RSVP.hash({ foos: this.store.find('foo'), bars: this.store.find('bar') }); } }); 中对foosbars进行排序?有没有办法按不同的SomeIndexController对模型进行排序?

1 个答案:

答案 0 :(得分:2)

您可以执行以下操作:

Application.SomeIndexRoute = Ember.Route.extend({
  model: function() {
    return Ember.RSVP.hash({
      foos: this.store.find('foo'),
      bars: this.store.find('bar')
    });
  },
  setupController: function(controller, modelHash) {
    controller.set('foos', modelHash.foos);
    controller.set('bars', modelHash.bars);
  }
});

Application.SomeIndexController = Ember.Controller.extend({
  sortedFoos: Ember.computed.sort('foos', 'foosSorting'),
  sortedBars: Ember.computed.sort('bars', 'barsSorting'),
  // Sorting properties
  foosSorting: ['propA'],
  barsSorting: ['propB'],
});

我希望这能回答你的问题。