【发布时间】:2017-04-18 21:40:19
【问题描述】:
我在 ember.js 中有两个具有一对一关系的模型。现在我想创建一个新的子对象并需要分配一个关联的父对象。我不知道该怎么做。我的模型是用以下代码定义的:
父对象的模型
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
children: DS.hasMany('child')
});
子对象模型
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
parent: DS.belongsTo('parent')
});
在路由的model()-方法中创建一个子对象。
var child = this.store.createRecord('child');
然后查询父对象。
var parent = this.findRecord('parent', 2);
然后我尝试将它们绑定在一起,但我尝试的任何方法都失败了。例如:
parent.get('child').addObject(child) // or
parent.get('child').pushObject(child) // or
child.set('parent', parent)
这些事情导致parent 在child 中没有任何内容,而child 在parent 中没有任何内容。我也做了一些异步承诺解决的尝试,但没有成功。如果有人可以发布一个如何管理它的示例,那就太好了。
【问题讨论】:
标签: javascript ember.js ember-data