我正在尝试在序列化并将数据发布到服务器时自定义hasMany关系的密钥。类似的东西:
const thread = DS.Model.extend({
emails: hasMany('email')
})
const email = DS.Model.extend({
thread: belongsTo('thread')
})
保存线程后,我使用EmbededdedRecordsMixin序列化相关的emails
记录。我希望在线程序列化时将密钥(默认情况下为emails
)更改为emails_attributes
。
我已经通过自定义ThreadSerializer
上的序列化功能
serialize () {
const thread = this._super(...arguments)
thread.emails_attributes = thread.emails
delete thread.emails
return thread
}
这也有效。但是,我不确定这是解决这个问题的正确方法。我查看了文档,但我找不到任何内容。
有什么想法吗?