자원

2013-01-18 5 views
3

나는 다음과 같은 경로가 : 새 App.Group 객체를 구축하기 위해, 내가 어떤 알 필요가 나의 새로운 경로에서자원

@resource 'groups', {path: 'events/:event_id/groups'}, -> 
    @route 'new' 

을 경우 우리에있어 그래서

내가 가지고있는 자원에 해당하는 다음 경로 :.

App.GroupsRoute = Ember.Route.extend 
    model: (params) -> 
    App.Event.find params.event_id 

그리고 경로에 해당하는 하나

,
App.GroupsNewRoute = Ember.Route.extend 
    model: -> 
    App.store.createRecord App.Group 

그룹을 만들 때 그룹 이벤트를 지정해야합니다. 그러나 GroupsNewRoute에서 이벤트를 검색 할 수없는 것 같습니다. 매개 변수에는 event_id이 포함되지 않습니다.

경로의 상위 리소스에서 모델을 가져 오는 방법은 무엇입니까?

당신은 App.store를 사용하지 않아야합니다 :

답변

8

여기에 몇 가지 문제가 있습니다. 상점은 this.get('store')과 같은 경로에서 사용할 수 있어야합니다.

경로 이름을 지정하는 이유가 확실하지 않습니다. GroupsRoute. 이벤트를 나타내므로 EventRoute으로 이름을 지정해야합니다. 이것은 필수는 아니지만보다 관용적입니다. 또한 GroupsRoute의 모델을 지정할 필요가 없습니다. 당신이하는 일은 기본 동작입니다.

마지막으로 경로에 this.modelFor('groups')을 통해 다른 경로의 모델을 가져올 수 있습니다. 그게 여기에서 당신의 문제를 해결해야합니다.

+0

GroupsRoute는 이벤트를 나타내지 않습니다. 이벤트 내에서 중첩 된 그룹 목록을 나타냅니다. –

+0

그 외에는 내 대답이 문제를 해결합니까? –

+0

예, 'this.modelFor'는 내 문제를 해결합니다. 고맙습니다. –