У меня есть требование как backbone-js-model-different-url-for-create-and-update, но ничего не получилось из него.Пользовательский URL-адрес для создания, обновления и удаления в Backbone.js
У меня есть магистральная модель, как это: -
var task = backbone.Model.extend({
idAttribute: "TaskId",
defaults: {
TaskId: null,
Name: null,
TaskTypeId: null
},
// urlRoot: '/MyController/GetTasksAsync',
methodToURL: {
'read': '/MyController/Get',
'create': '/MyController/create',
'update': '/MyController/update',
'delete': '/MyController/remove'
},
sync: function (method, model, options) {
options = options || {};
options.url = model.methodToURL[method.toLowerCase()];
return Backbone.sync.apply(this, arguments);
}
});
Теперь я не получаю, как вызвать метод Sync
?
Это то, что я пытался, но не получилось: -
this.model.sync("read",1,"");//(Get method, some hardcoded value /Get/1,no callback)
Я подобных линий, как я буду называть сохранить метод?
this.model.sync('update',model,'');
Я ничего не вижу ??
Более конкретно, вы можете объявить модель (var model = new task()), а затем выполнить команду model.save(), чтобы попасть в путь «create» (если модель новая, а путь «обновления» - в противном случае) model.fetch(), чтобы попасть в путь чтения и model.destroy(), чтобы попасть в путь «удалить». – mike
Кроме того, эти методы позволяют передать объект (параметры в документах), который сопоставляется параметру параметров в методе синхронизации. Вы можете, если хотите, добавить туда идентификатор (1 в вашем примере) и проверить его свойство объекта в методе синхронизации. Если он там, вы можете конкатенировать его до конца uri .... – mike
Я видел документы, и если я следую документам, я не смог бы заставить их работать. Можете ли вы опубликовать какой-нибудь правильный синтаксис?> – Shubh