我正在尝试从服务器序列化我的有效负载,但它无法正常工作。
以下是我的有效负载示例:
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
,它仍然无效。有人可以帮我吗?谢谢。
答案 0 :(得分:0)
我假设你使用的任何版本的ember和ember-data都将使用 Ember Data 2.0 Serializer (这意味着使用JSONAPISerializer)。
因此,假设您没有使用pods,我认为您需要annotations.js
中的文件,而不是app/serializers/annotation.js
中的文件。
// path: app/serializers/annotation.js
import DS from 'ember-data';
export default DS.JSONAPISerializer.extend({
primaryKey: '_id'
});
我在Ember Twiddle中创建的工作代码示例 EmbeddedRecords with _id
Ember API参考:http://emberjs.com/api/data/classes/DS.JSONAPISerializer.html#property_primaryKey