Eche un vistazo a este ejemplo de fuente anotada donde se sobrescribe Backbone.synccon una alternativa de almacenamiento local
backbone-localStorage
Básicamente, Backbone.sync debería ser una función que tome 4 argumentos:
Backbone.sync = function(method, model, options) { };
Necesitas disparar options.successo options.errordependiendo de si methodtuvo éxito. Los métodos están en el formato:
"create" : esperaba que creara el modelo en el servidor
"read" : esperaba que leyeras este modelo desde el servidor y lo devolvieras
"update" : esperaba que actualizara el modelo en el servidor con el argumento
"delete" : espera que elimine el modelo del servidor.
Necesita implementar esos 4 métodos y definir lo que quiera para su "server"
Por supuesto, estas son solo las cosas que Backbone.sync deben implementar. Puede implementar más methodsy puede pasar más parámetros a, successpero es mejor no hacerlo.
Es mejor asegurarse de que haga lo mismo que Backbone.synchace actualmente para que su programación a una interfaz en lugar de una implementación. Si desea cambiar su modificado Backbone.syncpara decir el localStorage, no tendrá que extenderlo usted mismo para que coincida con su Backbone.sync extendido "
[Editar]
También tenga en cuenta que puede usar múltiples implementaciones de sync. Cada referencia a Backbone.synces actaully, (this.sync || Backbone.sync)así que solo tienes que hacer algo como:
var MyModel = Backbone.Model.extend({
...
"sync": myOwnSpecificSync,
...
});
Backbone.synces solo el predeterminado global que usan todos los modelos a menos que los modelos tengan un syncmétodo establecido específicamente.