有没有办法使用关联模型的id创建具有belongsTo关联的余烬数据模型?

时间:2016-09-08 14:28:59

标签: ember.js ember-data

我知道应该存在的模型的id,并且我想创建一个与此模型具有belongsTo关联的记录。但是,我想在创建关联时只提供id,而不是首先查询关联的模型。这可能吗?

这就是我想要的工作(或其中的一些变体):

store.createRecord('person', {childId: '1', name: 'billybob'});

这是针对如下定义的模型:

Person = DS.Model.extend({
  name: DS.attr('string'),
  child: DS.belongsTo('child'),
});

指南建议如下:

store.createRecord('person', {child: child, name: 'billybob'});

在某个时刻已经从商店中提取child或者是新创建的记录。

我希望然后让孩子侧身。这可以避免需要后端上的端点直接处理子项,因为它们总是通过人员端点处理。

由于我们只给后端ID,如果该记录实际上不存在,则需要失败。

我尝试了各种排列,例如:

store.createRecord('person', {child: {id: '1'}, name: 'billybob'});

并尝试自定义模型的序列化程序,但没有成功。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我认为最好的方法是先用store.push()创建记录。然后,您可以使用store.unload从记录中删除商店,或确保adapter.shouldReloadRecord为此记录返回true,以便下次find时加载它