2013-05-10 2 views
0

나는 person이라는 모델을 만들고 있는데 parse.com javascript api를 사용합니다. parse.com에 모델을 보내려면 "내 함수를 만들었지 만 나쁘다고 생각합니다. 내가 API를 parse.com와 동기화 메서드를 재정의해야한다고 생각하고 사용 모델을 만든 후 메서드를 저장합니다. 그렇지?백본의 재정의 동기화 방법

var Person = Backbone.Model.extend({ 
     defaults: {}, 

     initialize:function() { 
      console.log("inperson"); 
     }, 

     validate:function() { 
      console.log("validate"); 
     }, 

     send:function() { 
      var user = new Parse.User(); 
      user.set("username", this.get("username")); 
      user.set("password", this.get("password")); 
      user.set("email", this.get("email")); 

      user.signUp(null, { 
       success: function(user) { 

       }, 
       error: function(user, error) { 
        alert("Error: " + error.code + " " + error.message); 
       } 
      }); 
     } 
    }); 

return Person; 

}); 
+0

구문 분석을 사용하여 객체를 만들려면 'Backbone.Model'이 아닌'Parse.Object'를 확장해야합니다. 그게, 내가하고있는 일을 잘하고 있는지 모르겠다. 왜 '보내기'를 호출하면 사용자에 대한 참조를 저장하지 않는 것입니까? 왜 Parse.User'를 확장하지 않을까요? –

답변

0

백본은 하나의 동기화 방법 (Backbone.sync) 만 사용합니다. 서버와 "이야기하는"모든 메소드 콜렉션과 모델은이 것을 통과합니다.

Backbone.sync = function(method, model, options) { 
    // method is send through methodMap witch is an object: 
    //var methodMap = { 
    // 'create': 'POST', 
    // 'update': 'PUT', 
    // 'patch': 'PATCH', 
    // 'delete': 'DELETE', 
    // 'read': 'GET' 
    //}; 

    // model refers to the active model and you can use model.attributes to get all the attributes. 

    // So in here you can write your integration with parse.com and not change anything else while using backbone. 
    // Remember to trigger `sync` etc.   
}; 

을하지만 allready 지내는-API를 parse.com 그래서 어쩌면이 해결책이 아니라고 볼 수
당신은 간단하게 말하여 덮어 쓸 수 있습니다.

+0

두 개의 서로 다른 모델을 기반으로 서버에 데이터를 전송하는 두 개의 다른 API가있는 경우 예 : 모델 : 사용자가 api를 가지고 있기 때문에 사용자 (암호, 메일, ecc.)로 구문 분석 할 수 있으며 다른 모델은 다릅니다. 같은 api. 사건을 구분하기 위해 if를 써야합니까? –

+0

예 구문 나머지 API가 있지만 구문 분석의 자바 스크립트 API를 사용하고 싶습니다. –