我有一个人模型如下
App.Person= DS.Model.extend({
id: DS.attr('string'),
name: DS.attr('string'),
visits: DS.hasMany('App.Visit'),
events: DS.hasMany('App.Event') ,
allergies: DS.hasMany('App.Allergies'),
get_allergies : function(){
return this.get('allergies').getEach('allergy_name').reduce(function(accum, item) {
return (accum.length > 0) ? (accum +', '+ item) : (item);
}, '');
}.property('allergies.@each.allergy_name')
});
App.Visit = DS.Model.extend({
visit_id: DS.attr('string'),
date: DS.attr('date'),
admission: DS.belongsTo('App.Admission')
});
App.Admission = DS.Model.extend({
loc: DS.attr('string'),
admission_date: DS.attr('date'),
care_team: DS.belongsTo('App.CareTeam')
});
正如你所看到的,Person hasMany "allergies",以及 person,allergies 也为我加载,因为在 UI 中我调用 get_allergies 方法,而其他 hasMany 关系,如 "visits" 和 "events" 没有加载。
在用户界面 {{person.get_allergies}}
我试图侧载关系“访问”和“事件”(使用网络上的示例),但这不起作用?有人能告诉我什么是侧载 ember-data 的正确方法,因为除了关于 stackoverflow 本身的几个问题外,我在网上找不到任何合适的示例文档?