Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过hasMany关系访问ember模型对象中的相关集合_Javascript_Ember.js_Ember Model - Fatal编程技术网

Javascript 通过hasMany关系访问ember模型对象中的相关集合

Javascript 通过hasMany关系访问ember模型对象中的相关集合,javascript,ember.js,ember-model,Javascript,Ember.js,Ember Model,我可能从根本上误解了如何在余烬/余烬模型中使用hasMany关系 自述文件有以下示例 postJson = { id: 99, title: 'Post Title', body: 'Post Body', comments: [ { id: 1, body: 'comment body one', }, { id: 2, body: 'comment body two' } ] }; App.

我可能从根本上误解了如何在余烬/余烬模型中使用hasMany关系

自述文件有以下示例

postJson = {
  id: 99,
  title: 'Post Title',
  body: 'Post Body',
  comments: [
    {
      id: 1,
      body: 'comment body one',
    },
    {
      id: 2,
      body: 'comment body two'
    }
  ]
};

App.Post = Ember.Model.extend({
  id: Ember.attr(),
  title: Ember.attr(),
  body: Ember.attr(),
  comments: Ember.hasMany('App.Comment', {key: 'comments', embedded: true})
});

App.Comment = Ember.Model.extend({
  id: Ember.attr(),
  body: Ember.attr()
});
想必,人们会这样做

post = App.Post.create();
post.load(1, postJson);
鉴于上述情况,现在我们可以通过get访问各种
post
道具(即
post.get('title')
),但如何访问评论

post.get('comments')
返回一个对象,但它不是App.Comment对象的集合,这正是我所期望的


提前感谢您提供的所有帮助。

它返回一个可编辑的集合对象,但不是数组。我正在用您的代码编写一个示例,我会立即发布它(我非常确定load是一个私有方法,您应该在模型定义中使用load,然后查找)


啊,这为我指明了正确的方向。另一个混淆点是,在本例中,“注释”是此处概述的余烬枚举
App.Post.load(postJson); //sideloading
return App.Post.find(99);