如何保存嵌套模型

How can i save nested models

本文关键字:嵌套 模型 保存 何保存      更新时间:2023-09-26

我正在开发一个使用Ember数据和RESTAdapter的Ember.js项目。

我的模型存在于各种问题和可能的答案之中。

App.Question = DS.Model.extend({
    answers: DS.hasMany('App.Answer'),
    text: DS.attr('string'),
    image: DS.attr('string')
});
App.Answer = DS.Model.extend({
    question: DS.belongsTo('App.Question'),
    text: DS.attr('string'),
    image: DS.attr('string')
});

我的观点是一种模态,你可以在其中创建或编辑问题及其答案。点击保存按钮或上传图像时,应保存问题和可能的答案。

问题是保存过程非常复杂。

  • 为了上传答案的图片,我需要确保服务器上存在答案
  • 为了保存答案,我需要确保问题存在

他们有没有一种方法可以告诉余烬立即保存整个问题及其答案?

我认为这个解决方案可能只是解决您的问题的方法:

DS.RESTadapter.map('App.Question', { answers: {embedded: 'always'} });

例如,请参阅:Ember.js用现有的子模型提交父模型

更多关于人际关系的信息可以在《突破性变化》中找到:https://github.com/emberjs/data/blob/master/BREAKING_CHANGES.md