如何在发送Id时使用fetch

时间:2014-02-11 10:51:35

标签: rest backbone.js

嗨我在backboneJS中有下一个模型:

var Type = Backbone.Model.extend({
     url : "/api/SomeRoute"
});
var model = new Type({id:"MyAlias"});
model.fetch();

在其余部分的SomeRoute我有2个动作可以返回我的模型。首先接收Id并返回模型Id,然后返回没有返回集合的参数。但是当我在JS中调用fetch()时,它不会在请求中发送Id。我做错了什么?

2 个答案:

答案 0 :(得分:3)

如果模型中指定了id属性。然后获取请求将类似于/ api / SomeROute / id

而不是url给urlRoot。 如果指定了urlRoot,则会附加模型ID。

var Type = Backbone.Model.extend({
    urlRoot : "/api/SomeRoute"
});

答案 1 :(得分:2)

将您的网址重写为下一个:

var type = Backbone.Model.extend({
  url: function(){
   return "/api/SomeRoute/" + this.get("id");
  }
});
var model = new Type({id: "SomeId"});
model.fetch();