2014-09-11 74 views
0

我有一个模型consultation与重写内容属于:在ember.js控制器

export default DS.Model.extend({ 
    title: DS.attr('string'), 
    records: DS.hasMany('record', { async: true }), 
}) 

而且ObjectController这个属于consultation - >records

我怎么能改写控制器records值,我试着做这样

export default Ember.ObjectController.extend({ 
    records: function(){ /*do some logic*/return this.records}.bind(this) 
}); 

,但得到的错误Uncaught Error: Assertion Failed: The value that #each loops over must be an Array. You passed function() { [native code] }

也有点糊涂了默认content财产ObjectController其中存储值

回答

2

你定义records作为函数(bind创建了一个函数);你想达到什么目的?不,你不能循环!如果你想创建的records模型上的修改后的版本,然后像做

--controller 
    records: function() { 
     return this.get('model.records').filter(...); 
    }.property('[email protected]') 

或任何适合你的想象。

备注model === content;它是控制器控制的底层数据,通常来自服务器,并且通常设置在路由的setupController中。