2014-09-10 1 views
1

내 템플릿 :Emberjs - 컨트롤러의 속성으로 설정된 모델의 레코드를 올바르게 수정하는 방법?

{{#each test11}} 
     {{businessname}} 
    {{/each}} 

내 컨트롤러 작동합니다

// businessmatches is a model that is set as a controller property in the router 
test11: function() { 
    var raw = this.get('businessmatches'); 

    // I want to be able to get all the records, filter them etc etc and then 
    // make them available to the template 

    return [ 
     Ember.Object.create(raw.content.get(0)._data) 
    ]; 
}.property('businessmatches'), 

raw.content.get(0)._data 해킹 같은 느낌, 그래서 나는이 일을 적절한 방법 누락해야합니다. businessmatches 레코드로 올바르게 작업하고 템플릿에서 새 세트를 사용할 수있게하려면 어떻게해야합니까?

라우터에서 편집

:

setupController: function(controller, model) { 
    controller.set('businessmatches', this.store.all('businessmatch')); 
} 

모델 :

import DS from 'ember-data'; 

var Businessmatch = DS.Model.extend({ 
    businessname: DS.attr('string'), 
    type: DS.attr('string') 
}); 

export default Businessmatch; 
+0

businessMatches을 무엇인가? 그것은 엠버 데이터 기록입니까? – Kingpin2k

답변

0
test11: function(){ 
    // give me all the records that have the property foo that is 11 
    var bms = this.get('businessmatches').filterBy('foo', 11); 
    // give me all the records that have the property bar that is 12 
    bms = bms.filterBy('bar', 12); 
    // other filtering etc  
    return bms; 
    // watch foo/bar on each record, if they change, recompute this computed property 
}.property('[email protected]{foo,bar,...}') 
+0

대단히 감사합니다! [후속 질문] (http://stackoverflow.com/questions/25756836/emberjs-how-to-set-another-property-from-computed-property-when-the-latter-is)을 게시했습니다. 나는 당신이보기를 원한다면 놀라운 것을 발견했습니다. – rollingBalls