没有ID的数据嵌入对象

我似乎无法找到一种方法来使用 ember-data中没有id的嵌入对象的模型 。 关于如何处理由Jehuda Katz嵌入的对象的答案接近我正在寻找的东西,尽管我一直在获取

断言失败:您必须在传递给'push'的对象中包含'id'记录,

这似乎是在阅读EmbeddedRecordsMixin文档时预期的行为:

没有id属性的记录不被视为嵌入式记录,模型实例必须具有要与Ember数据一起使用的id属性。

从REST-API接收到的JSON如下所示:

{
  'line': {
    _id: 5,
    name: "my line",
    opts: {...},
    dataset: [
      {x: 1473167369522, y: 5},
      {x: 1473167469522, y: 6},
      {x: 1473167569522, y: 7}
    ]
  }
}

应用程序/模型/ line.js

export default DS.Model.extend({
  name: DS.attr('string'),
  opts: DS.attr(),
  dataset: DS.hasMany('point')
});

应用程序/模型/ point.js

export default DS.Model.extend({
  x: DS.attr('custom'),
  y: DS.attr('')
});

应用程序/串行器/ line.js

export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
  attrs: {
    dataset: { embedded: 'always'}
  }
});

我应该如何解决这个问题?
我已经考虑过只是制作包含嵌套对象DS.attr()数组的属性,并且完全放弃了嵌套模型,但是这不起作用,因为我需要在嵌入对象的某个属性上进行一些自定义(反序列化)

(尽管Ember API经历了一些变化):
- 如何使用Ember数据访问json中的嵌套对象
- Ember数据和mongodb状态?


你可以使用ember-data-model-fragments addon:https://github.com/lytics/ember-data-model-fragments

链接地址: http://www.djcxy.com/p/90965.html

上一篇: data embedded objects without id

下一篇: Preferred Ember Data URL and JSON structure for multi