覆盖仅用于put的backbone.sync

时间:2012-03-09 19:29:53

标签: backbone.js

有没有办法覆盖PUT响应的同步方法,并从db中排除id字段,并保持不变?我正在使用Django REST框架进行API;在尝试PUT时,我得到了:

{"field_errors": "id": ["This field does not exist."],} 

我认为如果我覆盖同步并排除id的{​​{1}}字段,我的问题就会解决,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:3)

Backbone._sync = Backbone.sync;
Backbone.sync = function(method, model, options) {
var params = _.clone(options);
delete model.attributes.id;
params.success = function(model) {
    if(options.success) options.success(model);
};
params.error = function(model) {
    if(options.error) options.error(model);
    };
Backbone._sync(method, model, params);
}