我有以下型号:
App.Loan = DS.Model.extend
name: DS.attr('string'),
products: DS.hasMany('App.Product')
然后在我的代码中,我在Loan对象上调用save
方法,该对象有许多关联的产品,但只有贷款被发布到服务器,关联的对象没有。
答案 0 :(得分:0)
快速查看代码,似乎这是有意的,因为在记录上调用save会添加此记录,并且只在当前事务中添加此记录。如果嵌入了相关对象,也会添加它们。
在您的情况下,我首先创建一个新事务,添加记录和关联对象,然后在此事务上调用commit。像
这样的东西var transaction = store.transaction();
transaction.add(loan)
loan.get('products').forEach(function(product)){
transaction.add(product);
});
transaction.commit()
如果要将产品嵌入贷款中,可以通过配置这样的适配器来实现。假设您使用的是默认的REST适配器:
DS.RESTAdapter.map('App.Loan', {
products: { embedded: always }
}