2013-10-29 29 views
1

我試圖顯示一個hasMany關係的模型,每個關係都有一個belongsTo關係。Ember.js belongsTo不顯示在視圖

由於某些原因,Ember不想顯示belongsTo。

這裏是我的模型:

App.City = DS.Model.extend({ 
    city: DS.attr('string') 
}); 

App.Child = DS.Model.extend({ 
    name: DS.attr('string'), 
    city: DS.belongsTo('city', {async: true}) 
}); 

App.Activity = DS.Model.extend({ 
    children: DS.hasMany('child',{async:true}), 
    name: DS.attr('string') 
}); 

我的模板看起來是這樣的:

Activity name: {{name}}<br /> 
{{#each child in children}} 
    Child name: {{child.name}}<br /> 
    Child city name: {{child.city.name}} 
{{/each}} 

{{child.city.name}}是空的。

我創建了一個的jsfiddle來說明問題就在這裏:http://jsfiddle.net/N2xdx/

回答

1

在你的城市你燈具有:

App.City.FIXTURES = [ 
    { 
     id: 1, 
     name: 'Aarhus' 
    } 
]; 

但是你App.City沒有name: DS.attr('string')映射。更新你的模型以下內容,都將工作:

App.City = DS.Model.extend({ 
    name: DS.attr('string'), 
    city: DS.attr('string') 
}); 

這是該工作http://jsfiddle.net/marciojunior/vDaxt/

提琴