因此,假设食谱中含有多种不同量的成分。
食谱模型
var Recipe = DS.Model.extend({
name: DS.attr('string'),
ingredients: DS.hasMany('ingredient')
});
成分模型
var Ingredient = DS.Model.extend({
name: DS.attr('string'),
recipes: DS.hasMany('recipe'),
// amount?
});
因此每种成分的含量取决于配方。然而,就其本身而言,该成分不会有数量。
您将如何建模这些数据?现在我正在使用FixtureAdapter
,直到我完成界面构建。
使用Ember 1.5.1
和Ember-Data 1.0.0-beta.7+canary.b45e23ba
。
答案 0 :(得分:0)
回答你的第一个问题:
像这样定义模型
App.Comment = DS.Model.extend({
message: DS.belongsTo('message', {
polymorphic: true
})
});
该属性需要一个额外的属性propertyType,定义关系类型
{
"message": 12,
"messageType": "post"
}
https://github.com/emberjs/data/blob/master/TRANSITION.md#polymorphic-relationships
现在回答第二个问题,不确定是否需要多态。我可能只包括加入记录
var RecipeIngredient = DS.Model.extend({
amount: DS.attr(),
ingredient: DS.belongsTo('ingredient')
});
var Recipe = DS.Model.extend({
name: DS.attr('string'),
ingredients: DS.hasMany('recipeIngredient')
});