Embedded已与Ember进行过多次测试

时间:2013-03-13 23:25:52

标签: ember.js ember-data

我试图理解使用Ember的hasMany。特别是,我希望能够抓住一个特定的对象。我试过抓住firstObject,但这不起作用。我也试过循环每个对象。

jsBinjsBin with looping

重要代码:

App.MyModel = DS.Model.extend({
  name: DS.attr('string'),
  myOthers: DS.hasMany('App.MyOtherModel')
});

DS.RESTAdapter.map('App.MyModel',{
  myOthers: { embedded: 'always' }
});

App.MyOtherModel = DS.Model.extend({
  name: DS.attr('string')
});

App.store.load(App.MyModel, {
  id: 2,
  name: "myModel",
  my_others: [
    { name: 'myOther1' },
    { name: 'myOther1' }
  ]
});

console.log(myModel.get("myOthers.firstObject.name"));

我正在尝试为我的测试做这件事,但我没有运气。

我如何处理hasMany关系以获取特定对象并能够循环它们?感谢。

1 个答案:

答案 0 :(得分:0)

我发现你必须通过适配器,而不是商店。

updated jsbin

App.adapter = DS.RESTAdapter.create();
App.adapter.load(App.store, App.MyModel, {
  id: 2,
  name: "myModel",
  my_others: [
    { name: 'myOther1' },
    { name: 'myOther2' }
  ]
});