是否可以覆盖骨干模型的url方法,将id插入url字符串的中间。
即。我不想从这个
获取documents/6
但是这个
documents/6/editor
和
的模拟更新documents/6/editor
目前,骨干网坚持始终将id附加到url字符串的末尾。
我试过
urlRoot: function(){
return "/documents" + this.id + "/editor";
}
虽然这适用于从服务器获取模型,但它在更新时失败。它好像在尝试网址
/documents/6/editor/6
而不是
/documents/6/editor
答案 0 :(得分:2)
覆盖Model.urlRoot
会改变您网址的前缀,稍后会在Model.url
中使用
尝试
var M = Backbone.Model.extend({
urlRoot: '/documents',
url: function() {
var base = Backbone.Model.prototype.url.call(this);
if (this.isNew()) return base;
return base+'/editor';
}
});