Abd*_*ziz 6 ember.js ember-data
假设我有以下型号:
// customer.js
DS.Model.extend({
products: DS.hasMany('product')
});
// product.js
DS.Model.extend({
customer: DS.belongsTo('customer')
});
Run Code Online (Sandbox Code Playgroud)
我需要通过ID(尚未从后端加载)创建一个包含产品列表的客户,这类似于以下内容:
this.get('store').createRecord('customer', {products: [1, 2, 3]});
Run Code Online (Sandbox Code Playgroud)
但这失败了,因为商店希望产品是DS.Model数组:
处理路由时出错:index断言失败:hasMany关系的所有元素必须是DS.Model的实例,您传递了[1,2,3]
如何使用ID提供的关联创建记录?
处理路由时出错:index 断言失败:hasMany 关系的所有元素必须是 DS.Model 的实例,您传递了 [1,2,3] 错误
由于错误指出您需要传递 DS.Model 的实例,但只能使用 createRecord 创建实例,因此您可能需要执行如下操作,
let product1 = this.store.createRecord('product',{customer:1});
let product2 = this.store.createRecord('product',{customer:2});
return this.get('store').createRecord('customer', {products:[product1,product2]});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
178 次 |
| 最近记录: |