1

例如,如果我有一个带有“name”属性的 Person 模型,我可以在 Ember.js 中使用 Ember Data 调用什么来返回 Person 模型中所有名称的数组?

4

2 回答 2

3
App.Person.find().then( function(data) {
  var namesArray = data.getEach('name');
});

更新回复:评论(如果我想从 setupController 执行此操作...)

setupController: function(controller, model) {
  App.Person.find().then( function(data) {
    controller.set('variablename', data.getEach('name') };
  });
}
于 2013-07-20T19:59:51.240 回答
2
App.PersonsRoute = Ember.Route.find({
  setupController: function() {
    // Get all persons
    this.controllerFor('persons').set('content', App.Person.find());
  } 
});


App.PersonsController = Ember.ArrayController.extend({
  allNames: function() {
    var persons = this.get('content') || [];
    return persons.getEach('name');
  }.property('content.[]')
});

简而言之,当您有一个集合(一个对象数组)并且想要构建一个包含某个属性值的新数组时,请使用getEachgetEach('foo')是 的别名mapProperty('foo')

于 2013-07-20T06:13:10.797 回答