1

Backbone.js 发送更新对象的 POST 而不是 PUT。

我认为这是因为 mongoDB 使用 _id 而不是 id。

我如何说backbone.js 使用_id 而不是id?

我已经尝试了一些服务器端更改,但我认为只说骨干应该使用另一个属性作为 id 会更容易。 MongoDB:输出'id'而不是'_id'

4

2 回答 2

6

来自精细手册http://backbonejs.org/#Model-idAttribute

idAttribute model.idAttribute

模型的唯一标识符存储在 id 属性下。如果您直接与使用不同唯一键的后端(CouchDB、MongoDB)通信,您可以设置模型的 idAttribute 以透明地从该键映射到 id。

于 2012-06-26T11:32:28.727 回答
0

id 属性可以根据模型更改,例如

var Meal = Backbone.Model.extend({
  idAttribute: "_id"
});

要将其设置为所有模型的默认设置(例如,如果我们使用 mongodb),请通过将此 LOC 放置在您的应用程序 js 文件中来覆盖默认设置,该文件在主干.js 之后运行

//override the id attribute for model
Backbone.Model.prototype.idAttribute = '_id';
于 2013-10-11T21:58:10.563 回答