我在數據庫中有一個集合(一個對象列表)。我可以取它:collectionModel.fetch()
但是,然後用戶改變了該集合的東西。當用戶點擊保存按鈕時,整個收藏列表必須在數據庫中更新。我想也許我可以delete()
第一個老,然後create()
它與新的但我不能達到它。我不能使用update()
方法,因爲在這種情況下,我應該找到哪些集合元素已更改,但我想更新整個列表。我怎樣才能做到這一點?感謝幫助。如何更新數據庫中的整個Backbone.js集合?
1
A
回答
4
你有在該數據庫前的REST API?這就是Backbone如何與之合作。當您的JavaScript代碼運行model.save();
時,會向您的api發出PUT請求。
你的問題是關於保存整個集合,因爲如果你想保留在骨幹的默認實現中,你將不得不瀏覽集合中的所有模型併爲它們中的每一個調用保存。
如果您想向您的服務器發出一個請求,您將必須在您的集合中實現自定義方法。例如:
MyCollection = Backbone.Collection.extend({
saveAll: function() {
var data = this.toJSON();
return Backbone.$.ajax({
data: { objects: data },
url: '/url/in/your/server/to/update/db'
});
}
});
這將發送您的集合中所有模型的數組轉換爲JSON到您的服務器。
同樣,如果您想讓Backbone的生活變得輕鬆,您希望在服務器端擁有RESTful API。
0
如果你想重置集合,你必須指定「重置」屬性。
collectionList.fetch({
reset: true,
...
});
但我覺得這是更好地剛剛更新:
collectionList.fetch({
remove: false,
update: true,
merge: true,
...
});
相關問題
- 1. Backbone.js的集合不更新
- 2. Backbone.js批量更新集合
- 3. Laravel - 如何更新整個集合
- 4. Leaflet + Backbone.js:如何更新模型集合更新的視圖?
- 5. 保存Backbone.js模型並更新整個集合
- 6. 如何將Backbone.js集合保存到數據庫中
- 7. Backbone.js - 更新選擇更改集合
- 8. Backbone.js:使用不同的數據更新集合
- 9. 如何更新集合中的所有模型 - Backbone.js
- 10. 更新另一個數據庫集合中不同的db集合foreach方法
- 11. 如何修補整個集合到一個數據庫
- 12. Model.extend無法更新集合。 Backbone.js錯誤
- 13. 如何更新整個數據庫中的列?
- 14. 從數據集中更新數據庫
- 15. 如何使用數據集中的值更新數據庫?
- 16. 結合兩個集合backbone.js
- 17. MEAN App - 數據庫集合更新後更新表
- 18. 在「defaults」中提供新的集合backbone.js
- 19. 更新整個集合的通用存儲庫
- 20. 如何嵌套backbone.js集合?
- 21. 用$ pull更新整個mongo db集合
- 22. Backbone.js的集合
- 23. 如何更新sqlite3數據庫中的整數值?
- 24. 在Backbone.js中添加新數據到集合
- 25. 你如何更新整個MySQL數據庫的結構?
- 26. 使用UWP中的數據庫更新集合值(MVVM)
- 27. r表示整個數據的數據更新列的子集
- 28. 更新數據集,如何?
- 29. 如何更新數據集
- 30. Backbone.js的重新實例集合不更新相應的視圖
我想在數據庫中更新它只是提取舊的 – Ozg