我有下面的示例JSONAPI。我想在余烬数据中加载它。
{
"data": {
"id": "in",
"type": "product-offering",
"relationships": {
"products": {
"data": [
{
"type": "group-product",
"id": "group-product-001"
},
{
"type": "sub-product",
"id": "sub-product-001"
}
]
}
}
任何人都可以告诉我如何在产品提供模型中建立关系吗?
我想要这样的东西..
export default DS.Model.extend({
products: hasMany('group-product'),
products: hasMany('sub-product')
});
如何对 2 个模型使用同一属性上的多关系。
执行此操作的正确方法是使用多态关系。所以你需要一个通用的基本类型:
型号/基础产品.js
import DS from 'ember-data';
export default DS.Model.extend({
});
然后是您的子模型:
型号/组产品.js
import BaseProduct is './base-product';
export default BaseProduct.extend({
});
型号/子产品.js
import BaseProduct is './base-product';
export default BaseProduct.extend({
});
有了它,您可以在product-offering
上定义多态关系:
型号/产品供应.js
import DS from 'ember-data';
export default DS.Model.extend({
products: DS.hasMany('base-product'),
});