2014-05-16 33 views
0

這是我有:如何使用model.save()中的響應對象作爲集合?

var List = define(['backbone'], function(Backbone) { 
return Backbone.Model.extend({ 
    urlRoot: '/lists', 

    getId: function() { 
     return this.get('id'); 
    }, 

    getTitle: function() { 
     return this.get('title'); 
    } 
}); 

var lists = define(['backbone', 'model/list'], function(Backbone, List) { 
    return Backbone.Collection.extend({ 
     url: '/lists', 
     model: List 
    }); 
}); 

在我看來,我創建var model = new List(); model.save({title: '<test>'})的新模式。發送到服務器的請求將在數據庫中創建一個新條目,但在此之前,我使用hmtlspecialchars()來刪除注入的HTML代碼。該響應將返回解析的數據。在前端我想存儲解析模型,而不是在前端創建的模型。如何解決這個問題?我只找到了在前端直接保存模型的解決方案。

回答

0

我是個傻瓜!在創建問題後,我能夠解決我的問題。只需使用成功回調從模型:

var list = new List(); 
list.save(data, { 
    success: function(model,response) { 
     self.collection.add(response); 
    } 
}); 

當我嘗試這樣做我以前從回調模型前是什麼,我已經發送到後端模型。我解決了它,但也許有更好的解決方案?

相關問題