我们有一个包含多个子模型的模型:
// models/parent.js
export default DS.Model.extend({
children: DS.hasMany("child")
});
// models/child.js
export default DS.Model.extend({
parent: DS.belongsTo("parent")
});
父模型的序列化程序是使用 EmbeddedRecordsMixin
设置的,如下所示:
// serializers/parent.js
export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
children: { embedded: "always" }
}
});
如果我们在父模型的实例上调用save
,子模型会被标记为已保存吗?或者我们是否需要在父模型适配器中对每个子模型调用保存?
此外,如果我们定义一个子模型序列化器,它会在父序列化过程中用于序列化子模型吗?或者 ED 会使用默认的序列化器吗?
最佳答案
当我需要保存嵌套模型时,我覆盖了序列化程序方法 serializeBelongsTo 和 serializeHasMany 以将所有信息获取到 json,然后在服务器端解析它。
关于ember.js - 保存父模型时保存嵌入的子模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30052559/