1

路由器:entry_router.js.coffee

show: (id) ->
  @model = new Raffler.Models.Entry({id: id})
  @model.fetch()

型号:entry.js.coffee

class Raffler.Models.Entry extends Backbone.Model

  initialize: (options) ->
    alert(options.id)

  url: '/api/entries/' + id

我得到了正确的警报。但是如何将 options.id 传递给 URL 呢?

4

1 回答 1

4

如果您的模型不是集合的一部分,请指定Model.urlRoot而不是url. Backbone 会自动生成一个格式为的 URL [urlRoot]/id

class Raffler.Models.Entry extends Backbone.Model
    urlRoot: '/api/entries'

如果您的模型是集合的一部分,则无需设置urlor urlRoot。改为指定collection.url,Backbone 将自动推断该集合中所有模型的 URL。

于 2012-12-31T12:42:38.660 回答