我的路线中有我的承诺功能
setupController: function (controller,model) {
// Set the IndexController's `title`
this.controllerFor('New').set('model', model);
this.store.find('selectFill', { x: "20", y: "30" }).then(function (data) {
controller.set('selectFill',data.?????);
});
}
我的模型看起来像这样,
App.SelectFill = DS.Model.extend({
users: DS.hasMany('user', {
embedded: true
})
});
App.User = DS.Model.extend({
userId:DS.attr('string'),
department: DS.attr('string')
});
无论如何,一旦承诺被击中,我在商店中有数据。我的问题是,我如何从中提取用户?
这是我从promise函数中得到的类。
用户数组你可以在底部看到。但我如何从承诺回调到达那里? 对不起,如果我的问题很愚蠢,但我还是个新人。
答案 0 :(得分:0)
this.store.find('selectFill', { x: "20", y: "30" })
将解析类似对象(DS.AdapterPopulatedRecordArray
)的数组,该示例是selectFills
变量。因为它是一种数组,所以您可以使用forEach在每个selectFill中迭代并让用户调用selectFill.get('users')
。像这样:
setupController: function (controller,model) {
// Set the IndexController's `title`
this.controllerFor('New').set('model', model);
this.store.find('selectFill', { x: "20", y: "30" }).then(function (selectFills) {
selectFills.forEach(function(selectFill) {
var users = selectFill.get('users');
// do something with the users
});
});
}