我正在尝试创建一个计算属性,该属性返回一个对象数组,每个对象又有一个包含另一个对象数组的属性。计算属性有效,我可以在调用createRecord()时设置具有基本类型的属性,但填充hasMany的属性会使我失望。
我制作了一个JSBin:http://jsbin.com/oyAlOhA/1/edit?html,js,output
基本上我想要做的是能够将行为从左(绿色)面板复制到右(灰色)面板,但是通过创建记录而不是使用夹具适配器存储它们。
感谢任何帮助,谢谢。
答案 0 :(得分:1)
更改此行:
newUpper.set('gammas', testing);
到此:
newUpper.get('gammas').pushObjects(testing.map(function(id) { return App.Gamma.find(id); }));
首先,gammas属性是DS.ManyArray
实例,而不是常规数组。所以你不应该直接设置它。其次,它期待App.Gamma
个实例,而不是ID。