所以这是我的问题,我不确定如何正确创建一个属于的模型的记录。我有2个模型。
App.Group = DS.Model.extend({
peeps: hasMany('people'),
});
App.People = DS.Model.extend({
group: belongsTo('group')
});
所以在应用程序中,我可以通过 2 种方式做到这一点
var group = someGroup; // this is a reference to an actual group record
var record = store.createRecord('people', { group: group});
然后'belongsTo'在整个应用程序中正常工作,但是当我尝试保存发送回服务器的json时
{ 'people' : { 'group' : { //group values except id, since ember data
doesn't try and serialize the belongsTo record } } }
因此,无论如何我都不知道应该将 People 记录保存到哪个记录。
或者我可以使用 id 创建记录
var group = someGroup; // this is a reference to an actual group record
var record = store.createRecord('people', { group: group.get('id')});
但后来我不能再正确使用记录的belongTo了。它没有链接到任何东西,它只是一个普通的 ol' id。然而,当我保存时,我得到了 {'people' : {'group' : id } }。
在我弄清楚之前,我已经添加了一些可怕的hackery
//weird hackary for a sec while I figure out ember data.
record.set('group', group.get('id'));
record.save().then(function(){
record.set('group', group);
});
有什么建议/想法吗?
(作为旁注,我可能会看到我是否设置了 id,然后保存,它可能会根据服务器的结果重新加载,然后连接 belongsTo,但这是假设我在创建后立即保存,我没有想不得不假设)