2013-07-18 2 views
1

주말 프로젝트가 있으며 Ember.js를 평가하는 데 사용되며 내 템플릿에 중첩 된 개체를 표시 할 수없는 이유를 알 수 없습니다. 이 작동하지 않습니다Ember.js - 중첩 된 모델을 렌더링 할 수 없습니다.

{{#each emails}} 
    {{email_address}} 
{{/each}} 

난 그냥하려고하면 {{이메일}} 내가 뭔가를 잘 것을 힌트 얻을 :

모델 :

App.Contact = DS.Model.extend({ 
    firstName: DS.attr('string'), 
    lastName: DS.attr('string'), 
    company: DS.attr('string'), 
    emails: DS.hasMany('App.Email') 
}); 

App.Email = DS.Model.extend({ 
    contact: DS.belongsTo('App.Contact'), 
    emailAddress: DS.attr('string'), 
}); 

경로 :

App.Router.map(function() { 
    this.resource('contacts', function() { 
this.resource('contact', {path: ':contact_id'}); 
    }); 
}); 

App.ContactsRoute = Ember.Route.extend({ 
    init: function() {}, 
    model: function() { 
    return App.Contact.find(); 
    } 
}); 

App.ContactRoute = Ember.Route.extend({ 
    model: function(params) { 
    return App.Contact.find(params.contact_id); 
    } 
}); 

다음에 무엇을 시도해야할지 모르겠습니다. 레일즈에서 active_model_serializer를 사용하고 있습니다. 난 embedding 시도, 아무 소용이 사이드 로딩. 내가 놓친 게 너무 간단하다는 것이 틀림 없습니다. 미리 감사드립니다!

답변

0

도우미 each 도우미를 사용하는 경우 이러한 문제를 피하기 위해 반복 할 항목에 대해보다 구체적으로 설명하는 것이 좋습니다.

이것은 또한해야
{{#each email in model.emails}} 
    {{email.emailAddress}} 
{{/each}} 

작업 :

{{#each emails}} 
    {{this.emailAddress}} 
{{/each}} 

을 또한, 모델 속성은 emailAddress하지 email_address라고

은 다음보십시오.

희망이 있습니다.

+0

감사합니다. 시도해 봤는데 아직 운이 없다. JSON을 조금 더 자세히 살펴볼 필요가 있다고 생각합니다. – user2580174

+0

이 답변은 저에게 도움이되었지만 모든 연락처를 처음 가져온 결과의 이메일을 포함시켜야했습니다. 도와 주셔서 감사합니다. – user2580174

관련 문제