是否有任何可能的方法覆盖PUT
响应的同步方法,并从db中排除id
字段,并保持不变?我为API使用Django REST框架;而试图PUT
,我越来越:override backbone.sync only for put
{"field_errors": "id": ["This field does not exist."],}
我想,如果我重写同步和排除id
领域PUT
,我的问题将得到解决,但我不知道该怎么做。
是否有任何可能的方法覆盖PUT
响应的同步方法,并从db中排除id
字段,并保持不变?我为API使用Django REST框架;而试图PUT
,我越来越:override backbone.sync only for put
{"field_errors": "id": ["This field does not exist."],}
我想,如果我重写同步和排除id
领域PUT
,我的问题将得到解决,但我不知道该怎么做。
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);
}
我只想问问这种代码在哪里?在视图上?尽管我使用backbone,underscore和required.js。我怎么称呼它?因为正常同步将我需要的模型串联起来,从而对串化模型进行串联。 – jongbanaag 2012-03-30 01:58:27
你应该保持在这个模型的代码,骨干调用它时自动有GET,POST,PUT,DELETE请求,大多数情况下,model.attributes.id不工作,我的情况下,它的工作原理,需要检查它 – 2012-03-30 10:44:33
为stringifies检查主干中的解析方法 – 2012-03-30 11:13:24
如果你的问题是可以修改URL的默认[Collection.url(http://documentcloud.github.com/backbone/#Collection-url)和/或[Model.urlRoot(HTTP ://documentcloud.github.com/backbone/#Model-urlRoot)默认行为。 – fguillen 2012-03-13 16:28:30