Погляньте на цей примітка з примітками, де вони Backbone.sync
заміщені, з альтернативою локального зберігання
магістраль-локальний сховище
В основному Backbone.sync має бути функцією, яка бере 4 аргументи:
Backbone.sync = function(method, model, options) { };
Стріляти потрібно options.success
або options.error
залежно від того, чи method
вдалося це зробити. Методи у форматі:
"create"
: очікується, що ви створите модель на сервері
"read"
: очікується, що ви прочитаєте цю модель з сервера та повернете її
"update"
: очікується, що ви оновите модель на сервері з аргументом
"delete"
: очікується, що ви видалите модель з сервера.
Вам потрібно реалізувати ці 4 методи та визначити все, що ви хочете для свого "server"
Звичайно, це лише ті речі, які Backbone.sync
треба реалізувати. Ви можете впроваджувати більше, methods
і ви можете передавати більше параметрів назад, success
але краще цього не робити.
Найкраще переконатися, що він працює так само, як Backbone.sync
і в даний час, щоб ваше програмування в інтерфейсі, а не реалізація. Якщо ви хочете вимкнути свою модифіковану Backbone.sync
для скажімо локальну сховище, вам не доведеться самостійно розширювати її, щоб відповідати розширеній Backbone.sync "
[Редагувати]
Також зауважте, що ви можете використовувати кілька реалізацій sync
. Кожна посилання на Backbone.sync
нього точно, (this.sync || Backbone.sync)
тому вам просто потрібно зробити щось на кшталт:
var MyModel = Backbone.Model.extend({
...
"sync": myOwnSpecificSync,
...
});
Backbone.sync
- це лише глобальний стандарт за замовчуванням, який використовують усі моделі, за винятком випадків, коли для моделей визначений sync
метод.