Backbone Sync
Backbone.js의 Sync기능은 기본적으로 Restful한 서버에서 동작 하며, Ajax 데이터 전송을 당담한다.
CRUD method를 지원(‘create’, ‘read’, ‘update’, ‘delete’)
Backbone.sync is sync(method, model, [options]);
- create -> POST /collection
- read -> GET /collection[/id]
- update -> PUT /collection/id
- patch -> PATCH /collection/id
- delete -> DELETE /collection/id
Backbone.Sync 메소드 테스트
다음과 같이 전역 Sync 메소드를 구현하면 원래의 Sync기능을 오버라이드 한다. 즉, Restful하지 않은 서버와 통신해야 할 때, 이 함수를 구현하면 된다.
1 | Backbone.sync = function(method, model){ |
Backbone.Model.Sync, Backbone.Collection.Sync 메소드 테스트
이들 모두 오버라이드 가능한 sync메소드가 있다. 이 부분을 오버라이드 하면 Restful하지 않은 서버와 통신할 수 있게 된다.
1 | //모델 선언 |
- Backbone.sync, Backbone.Model.Sync, Backbone.Collection.Sync 함수를 구현해 주면 Restful하지 않은 서버를 대상으로도 Sync기능을 활용할 수 있다.
- Backbone.Model과 Backbone.Collection의 defaults 프로퍼티에 id 어트리뷰트를 삽입하면 Sync의 create명령이 update명령으로 오동작할 수 있다.