1

在我的应用程序中,我有以下路线设置

Orders.Router.map ->
  @resource "orders", path: '/', ->
    @route 'new'
    @route 'show', path: ':order_id'
    @resource 'items', path: ':order_id/items', ->
        @route 'new'

class Orders.ItemsNewRoute extends Ember.Route
  model: (params) ->
    Orders.Order.find params.order_id

在我的items.new路线中,我希望有一个返回链接orders.show,但我无法找到解决此问题的最佳方式。

我找不到将我的参数从我的 URL 绑定到linkTo帮助程序的方法。解决此问题的最佳方法是什么?

4

2 回答 2

0

瑞安,

我不是 100% 确定我理解您的问题,但 linkTo 使用起来非常简单。

{{#linkTo "orders.show" controller.content}}Show My Order{{/linkTo}}

上面的代码会将您发送到 orders.show 路由,模型是您的控制器的内容。

史蒂夫

于 2013-08-19T02:56:37.517 回答
0

我认为这不是解决此问题的最佳方法,但我能够稍微弄乱路由器以使其更像这样:

Orders.Router.map ->
  @resource "orders", path: '/', ->
    @route 'new'
    @route 'show', path: ':order_id'
    @resource 'items', path: ':order_id/items/new'

class Orders.OrdersRoute extends Ember.Route
  model: ->
    return Orders.Order.find()

class Orders.OrdersIndexRoute extends Ember.Route
  model: ->
    return Orders.Order.find()

class Orders.ItemsRoute extends Ember.Route
  model: (params)->
    return Orders.Item.createRecord
      order: Orders.Order.find params.order_id

然后在我的模板中我引用{{#linkTo 'orders.show' order}}

似乎无法从原始:order_id通配符中获取引用。

于 2013-08-19T03:56:45.520 回答