我需要一次將所有深層對象保存到服務器,並且無法在線查找任何使用最新的支持數據(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