2012-06-22 4 views
2

Ember.Router에서 동적 세그먼트를 사용하면 모델이 자동으로 모델을 식별하고 모델에서 find (색인)를 호출하고 결과를 컨트롤러의 내용으로 설정합니다. 이 올바른지?emberjs 자동 모델 바인딩/생성

예인 경우 모델은 어떻게 식별됩니까? "connectOutlet"함수에서 제공 한 이름으로?

동적 파트가없는 경로에 이와 비슷한 것이 있습니까? 그렇지 않다면 왜 뷰와 컨트롤러가 자동으로 생성되고 바인딩되고 모델이 아닌가?

답변

1

모델 유형은 속성 modelTypeEmber.Route 통해 제공된다 :

Ember.Route.extend({ 
    route: '/:stuff_id', 
    modelType: 'App.Stuff', 

    connectOutlets: function(router, stuff) { 
     ... // work with Stuff instance 'stuff' here 
    } 
} 
+0

흠 덕분. 지금 예제를 만들려고했지만 작동하지 않는 것 같습니다. http://jsfiddle.net/bhEtU/ 세부 사항을 입력하면 App.ItemList.find 함수가 호출되어야한다고 생각합니다. – Lux

+0

당신의 바이올린을 업데이트했습니다 : http://jsfiddle.net/bhEtU/1/ 아직도 무엇이 실종 되었습니까? –

+0

감사합니다. 두 가지 : URL의 경로는 '/ item/detail/undefined'가 아니라 '/ item/detail/1'이어야합니다. 세부 경로의 내용은 단일 ItemList 요소가 아니어야하며 ItemDetail 요소 여야합니다. 따라서 내용은 ItemDetail.find (컨텍스트) 여야합니다. 나는 U가 무슨 뜻인지 이해하기를 바랍니다. – Lux