我需要一次将所有深层对象保存到服务器,并且无法在线查找任何使用最新的支持数据(1.0.0-beta.4)的示例。Ember数据:保存关系
例如,有这些模特: (jsfiddle)
App.Child = DS.Model.extend({
name: DS.attr('string'),
age: DS.attr('number'),
toys: DS.hasMany('toy', {async:true, embedded:'always'}),
});
App.Toy = DS.Model.extend({
name: DS.attr('string'),
child: DS.belongsTo('child')
});
而这种代码:
actions: {
save: function(){
var store = this.get('store'),
child, toy;
child = store.createRecord('child', {
name: 'Herbert'
});
toy = store.createRecord('toy', {
name: 'Kazoo'
});
child.set('toys', [toy]);
child.save();
}
}
它不仅节省了JSON的子对象,但没有任何的玩具 - 没有侧装:
{
child: {
age: null
name: "Herbert"
}
}
我是否必须手动保存玩具t OO?反正是有,我可以把它发送下面的JSON到服务器:
{
child: {
age: null
name: "Herbert",
toys: [{
name: "Kazoo"
}]
}
}
或者
{
child: {
age: null
name: "Herbert",
toys: [1]
}
}
见的jsfiddle:http://jsfiddle.net/jgillick/LNXyp/2/
使用Ember 1.3.1/data 1.0.0-beta 6,'property = Ember.get(record,key)'似乎返回一个空的promise数组。这特别奇怪,因为我可以用'record.get('key')。然后(函数(items){...})'访问子记录'。任何想法,如果这是一个已知的问题? – eriknelson