假设您有一个id
的模型,并且您想要在数据库中删除它。因此,您在该模型上调用destroy()
方法(如下面的代码示例所示)。这会发送OPTIONS
HTTP请求,然后发送DELETE
HTTP请求。我的问题是,虽然我很好地在服务器端抓住DELETE
请求,但我找不到任何信息告诉我模型id
是什么 - 它是什么不是请求中的参数,也不在URL中。我如何找到这些信息?我无法在文档here中看到它。这是我在存储代码的仓库中的link。
removeElement: function() {
// DELETE in DB
this.model.destroy();
this.remove();
this.unbind();
},
我所期望的是HTTP请求会有{ 'id': 42319 }
或类似的参数。
答案 0 :(得分:1)
您可能需要设置模型ID属性。 Backbone在客户端上自动设置的id是cid而不是id。请注意,使用不同唯一键(如MongoDB)的DB的常见问题是没有从该键映射到ID as described in the docs
例如:
var Model = Backbone.Model.extend({
idAttribute: "_id"
//other model setup code
});
答案 1 :(得分:0)
我的问题是我在url
和model
中同时定义了collection
属性。您只应在url
中定义collection
。愚蠢的错误。