ember.js - 保存父模型时保存嵌入的子模型

标签 ember.js ember-data

我们有一个包含多个子模型的模型:

// 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/

相关文章:

javascript - 用于 MVC 开发的 Node - Express + Ember + Socket io 项目文件结构

ajax - Ember - 中止 ajax 请求

Ember.js:直接加载相关模型

javascript - Ember js : Why does the action not get fired?

javascript - Ember 过渡和渲染完成事件

javascript - Ember 计算属性未更新

ember.js - MODEL_FACTORY_INJECTIONS 和夹具

ember.js - 加载 fixture 时未捕获#<错误>

ember.js - 了解用于重定向的 Ember Route Hook

ember.js - EmberData 设置值可防止模型保存后将来自动加载数据