2013-01-18 59 views
3

我有以下途径:资源动态段和嵌套路线检索模型

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

在我的新途径,以建立一个新的App.Group对象,我需要知道这是事件我们在

所以我有以下的路线,它对应于资源:

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

如何从路径中的父资源获取模型?

回答

8

这里有几个不同的问题:

你不应该使用App.store。该商店应作为this.get('store')在路线上提供。

我不确定你为什么命名你的路线GroupsRoute。既然它代表一个事件,你应该把它命名为EventRoute。这不是必需的,但它会更习惯。另外,您不需要指定GroupsRoute的型号。你在做什么是默认行为。

最后,您可以通过以下方式获取另一路线的模型:this.modelFor('groups')您的路线中。这应该解决你的问题。

+0

群组路由不代表事件。它代表嵌套在事件中的组的列表。 –

+0

除此之外,我的答案能解决您的问题吗? –

+0

是的,'this.modelFor'解决了我的问题。谢谢。 –