Ember.js 在一条路线上混合不同的模型
我们正在将余烬与余烬数据一起使用,并通过以下设置解决: 有一个父对象(Ember.js 在一条路线上混合不同的模型,ember.js,ember-data,Ember.js,Ember Data,我们正在将余烬与余烬数据一起使用,并通过以下设置解决: 有一个父对象(Epic),它有许多子对象(UserStory)。我们使用余烬数据对此进行了相应的建模: App.Epic=DS.Model.extend({ 名称:DS.attr(“字符串”), 描述:DS.attr(“字符串”), 项目:DS.belongsTo(“应用程序项目”) }); App.UserStory=DS.Model.extend({ 名称:DS.attr(“字符串”), 描述:DS.attr(“字符串”), 目标:DS
Epic
),它有许多子对象(UserStory
)。我们使用余烬数据对此进行了相应的建模:
App.Epic=DS.Model.extend({
名称:DS.attr(“字符串”),
描述:DS.attr(“字符串”),
项目:DS.belongsTo(“应用程序项目”)
});
App.UserStory=DS.Model.extend({
名称:DS.attr(“字符串”),
描述:DS.attr(“字符串”),
目标:DS.attr(“字符串”),
优点:DS.attr(“字符串”),
epic:DS.belongsTo(“App.epic”)
});
我们现在想要实现的是,我们有一个独立的表单列表,可以编辑Epic
及其所有UserStories
。显然,我们只需通过RESTAdapter
交付所有UserStories
以及Epic
。但我们担心这会导致丑陋的更新场景:更改一个UserStory
会触发整个Epic
及其所有UserStories
的更新。在我们的体系结构中,UserStory
是一个独立的实体,应该由dedidacted REST服务维护
作为一名余烬新手,我们希望实现以下几点:
- 通过余烬数据加载
Epic
- 扩展
以将所有EpicController
加载到单独的模型-(列表)中UserStories
- 通过专用表单更改
将触发对Epic
Epic Rest服务的更改
- 魔术:对单个
表单的更改将触发对UserStory
User Story Rest服务的单独更改
如何才能实现这种魔力?看看控制器的方法:
这有点尴尬,但我想要的正是余烬数据在默认情况下的行为。我所需要做的就是让
Epic
REST服务提供UserStory
id,而不是内联对象。Ember将一次性获得所有的孩子-URL设置有点难看,但很有效-并将使用UserStory
rest服务来完成放置
余烬有一个陡峭但令人满意的学习曲线
谢谢你的反馈
Stefan这似乎是侧向加载的主要用例,即在与Epic相同的API调用中交付用户故事集,但作为单独的数组而不是嵌套。