Serialization 余烬序列化程序未序列化embbed记录

Serialization 余烬序列化程序未序列化embbed记录,serialization,ember.js,Serialization,Ember.js,我试图从服务器序列化我的负载,但它不起作用 以下是我的有效负载示例: events:[{ id: "57f358856c616cf434fd0500" annotations:[{_id: "57f358856c616cf434ff0500", desc: "hello world"}] }] 我想将注释_id更改为id 这是我的序列化程序: //event.js export default ActiveModelSerializer.extend(DS.EmbeddedRecord

我试图从服务器序列化我的负载,但它不起作用

以下是我的有效负载示例:

events:[{
  id: "57f358856c616cf434fd0500"
  annotations:[{_id: "57f358856c616cf434ff0500", desc: "hello world"}]
}]
我想将注释_id更改为id

这是我的序列化程序:

//event.js
export default ActiveModelSerializer.extend(DS.EmbeddedRecordsMixin, {
  attrs:{
    annotations:{embedded:'always'}
  }
});

//annotation.js
export default ActiveModelSerializer.extend(DS.EmbeddedRecordsMixin,{      
  attrs:{
    id: '_id',
  },
});

即使我使用的是
DS.EmbeddedRecordsMixin
,它仍然不起作用。有人能帮我吗?谢谢。

我假设您使用的任何版本的余烬和余烬数据都将使用余烬数据2.0序列化程序(这意味着使用)

因此,假设您没有使用,我想您需要的不是
annotations.js
中的文件,而是
app/serializers/annotation.js

我在Ember Twiddle中创建的工作代码示例


余烬API参考:

您使用的是什么版本的余烬和余烬数据?您是否也在使用Ruby后端?我这样问是因为如果您正在使用其他东西,ActiveModelSerialzier可能不是您想要的。
// path: app/serializers/annotation.js
import DS from 'ember-data';

export default DS.JSONAPISerializer.extend({
  primaryKey: '_id'
});