var elementUrlRoot = api_url + '/elements';
var elementModel = Backbone.Model.extend({
'idAttribute': '_id' //mongoDB
, 'urlRoot': elementUrlRoot
, defaults: {
"signature": "",
"group": 0
}//defaults
});
var elementCollection = Backbone.Collection.extend({
model: elementModel
, 'url': elementUrlRoot
});
var testmodel = new elementModel({DOM_id: 111});
testmodel.save({signature: "test"},
{
error: function (model, response, options) {
console.log('test model save error:', response);
},
success: function () {
console.log('test model save success');
}
}
);
我更新时,我的骨干模型没有保存到服务器。 我已经设置了模型的urlRoot属性(根据文档不应该是必需的)。但是仍然没有发出HTTP请求。
更新
我在回调中添加了一个成功方法。它正在执行中。 但是没有请求被发送到服务器。
更新
我发现了错误。我已添加此代码以保存整个集合。
Backbone.Collection.prototype.syncCollection = function (options) {
console.log('syncing the collection');
Backbone.sync("create", this, options);
};
它工作,我能够用它保存集合。 但它似乎导致了保存单个模型的问题。请求在我删除后发出。
答案 0 :(得分:0)
您的urlRoot是必需的,因为您的模型不是集合的一部分。
尝试取消分配左侧的urlRoot属性 http://backbonejs.org/#Model-urlRoot