【问题标题】:EmberJS Data HasMany relationship parent jon contains whole object not idsEmberJS Data HasMany 关系父 jon 包含整个对象而不是 id
【发布时间】:2015-01-06 14:19:49
【问题描述】:

EmberJS Data HasMany 关系父 JSON 包含整个对象而不是 ids

App.Message = someParentClass.extend({
    childMessages: DS.hasMany('ChildMessage'),
    message:DS.attr('string',{defaultValue: ""})
}

App.ChildMessage = someParentClass.extend({
    message: DS.attr('string',{defaultValue: ""}),
    code:DS.attr('string',{defaultValue: ""})
}

JSON 看起来像这样

{
    "message":"xyz",
    "childMessages":[{"code":"we","message":""},{"code":"uh","message":""},{"code":"wd","message":""}]
}

获取对象后,子消息的代码和消息未定义(未填充)

改变JSON不在我的手中

请帮忙

【问题讨论】:

  • 您使用的是什么版本的 Ember 和 Ember Data?
  • 此外,对象不包含 ID 的事实是有问题的。例如,ember 数据如何知道在保存时哪些对象已被修改?
  • 您的应用程序是只需要从 API 读取数据还是必须同时保存?
  • 感谢@Oren,您的评论对您有帮助

标签: json ember.js ember-data has-many


【解决方案1】:

问题解决了。

Ember 需要每个子对象的 id。所以我从服务器添加了带有随机数的 id 文件。

{
    "message":"xyz",
    "childMessages":[{"id":4567,"code":"we","message":""},{"id":7874,"code":"uh","message":""},{"id":5231,"code":"wd","message":""}]
}

成功了

谢谢

【讨论】:

    猜你喜欢
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多