2013-05-10 44 views
2

我很困惑發送集合或模型到服務器。通過型號或集合保存在服務器中?

這是我的模型:

var Person = Backbone.Model.extend({ 
    defaults : {}, 
    initialize : function() {} 
}); 

,這是我收集:

var Usercollection = Backbone.Collection.extend({ 
    model : Person, 
    url : 'https://api.parse.com/1/classes/_User/' 
}); 

現在,如果我會救我得先收集和使用在服務器上添加一個模型保存模型或首先添加一個集合並使用保存集合?至少,我必須編寫一個ajax調用來在服務器中發佈集合或模型?

回答

0

如果你想在模型保存後的模型添加到集合中,你需要在收集,這將觸發上集合添加事件它得到使用後.create創建..

this.collection.create(model.toJSON() , options); 
1

您應該將模型保存到服務器。

保存模型:在模型上調用save()

var user = new UserModel();  
    user.save({name: 'SJ', age:'35'}, { 
     success: function (user) { 
     // I get a model here with id 
     } 
    }); 

閱讀這些鏈接瞭解更多信息。

我已經給你的服務器端代碼的鏈接看看這些API使事情變得更加實際意義。希望這可以幫助!

+0

在你的代碼我可以在哪裏添加模型集合? – 2013-05-10 18:32:21

+0

好點:如果你看看Thomas寫的代碼,你會得到它。無論何時將模型保存到後端,您都可以將模型添加到成功處理程序中的集合中,或者您應該獲取完整的集合。因此,當您撥打電話獲取整個集合時,它會讀取您的數據庫並製作模型列表並返回列表。 – sachinjain024 2013-05-10 18:34:40

+0

在thomas的代碼中,在user.save()的成功處理程序中,他重定向到一個新的路由,並且在那條路徑中,他從服務器獲取整個集合並再次呈現。所以新添加的模型被添加到集合本身。 – sachinjain024 2013-05-10 18:35:42

0

使用collection.create();

http://backbonejs.org/#Collection-create

方便到集合中創建模型的新實例。 等效於使用屬性哈希實例化模型,將 模型保存到服務器,並在成功創建 之後將模型添加到集合。返回新模型。 ...

var Library = Backbone.Collection.extend({ 
    model: Book 
}); 

var nypl = new Library; 

var othello = nypl.create({ 
    title: "Othello", 
    author: "William Shakespeare" 
});