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-запросов до сих пор нет.Магистральная модель не сохраняется
Update:
Я добавил метод успеха в функции обратного вызова. Он выполняется. Но на сервер не отправляются запросы.
Обновление:
Я нашел ошибку. Я добавил этот код, чтобы сохранить целую коллекцию.
Backbone.Collection.prototype.syncCollection = function (options) {
console.log('syncing the collection');
Backbone.sync("create", this, options);
};
Это сработало, и я смог сохранить коллекции с ним. Но, похоже, это вызвало проблему с сохранением отдельных моделей. Запросы выдаются при удалении.
Try добавления обратного вызова ошибки в 'save' опций. –
Спасибо за информацию. Я добавил этот обратный вызов. Но он не выводит никаких результатов на консоль, поэтому он не называется. – reggie
Я вижу, что мой testmodel.save() возвращает объект jqXHR со статусом 204 (который я ожидаю). Но я не вижу активности на вкладке сети консоли. Не отображаются ли запросы на вкладке сети консоли Chrome? – reggie