Ember.js 动态段未传递到路由参数
我使用的是Ember 1.0和Ember Data 1.0Beta。我试图将一个动态段传递给这样的路线:Ember.js 动态段未传递到路由参数,ember.js,Ember.js,我使用的是Ember 1.0和Ember Data 1.0Beta。我试图将一个动态段传递给这样的路线: @resource 'organization', path: 'organizations/:organization_id', -> @route 'edit' 然后在我的编辑路线中: Whistlr.OrganizationEditRoute = Ember.Route.extend model: (params) -> @store.find('orga
@resource 'organization', path: 'organizations/:organization_id', ->
@route 'edit'
然后在我的编辑路线中:
Whistlr.OrganizationEditRoute = Ember.Route.extend
model: (params) ->
@store.find('organization', params.organization_id)
不幸的是,params散列结果为空。当我在控制台中检查它时,它只是一个简单的{}
。反过来,params.organization\u id
为空。即使URL看起来正确,也会发生这种情况:“/organizations/1/edit”`
这与中的设置非常相似。有什么可能出错?原因是动态段(
:organization\u id
)是组织
资源的一部分,而不是编辑
资源。这意味着只有组织路由
才有权访问参数组织id
但是,如果您的OrganizationEditRoute
中需要该模型,则可以使用modelFor
访问它
Whistlr.OrganizationEditRoute = Ember.Route.extend
model: (params) ->
@modelFor('organization')
这使得
OrganizationRoute
可以从其动态段加载模型,然后OrganizationEditRoute
可以像这样简单地访问该模型。谢谢你,Ryan。这解释了很多。我在很多示例中看到了modelFor,但直到现在还不知道该如何使用它。