2012-10-05 15 views
2

在Backbone.js的,我的溝通了解與服務器進行檢索數據是陰天充其量......我現在的困惑是:Backbone.js的和與服務器通信(精煉檢索數據集)

當您使用集合時,您可以通過模型從 數據庫獲取一組數據並過濾掉不需要的結果。我的關注點 與此相關的是,如果未過濾的結果結果爲 長達數百萬的結果,則會降低速度。

我知道這不一定是它的功能,因爲其他人使用backbone.js,我以前沒有見過這種抱怨。

問題: 通過Backbone.js的,當你取了一組在那裏它溝通的對象,你如何傳遞變量的方法指定過濾器?例如,調用一個get方法,該方法可以使用user_id返回具有關聯的user_id的對象。

如果這不是正確的方法,請讓我知道。

說明backbone.js如何與服務器通信,它期望與哪種類型的接口進行通信。例子也會非常有幫助。

任何幫助,非常感謝。

+0

你的問題是什麼? –

+0

你永遠不會處理從服務器傳遞給客戶端的數百萬個結果。這應該通過數據庫查詢逐漸縮小到後端可管理的範圍,然後才能切換到前端。想想你見過的網絡應用程序。他們什麼時候顯示出許多結果,而無需重新加載或使用ajax在向下滾動頁面時加載更多結果(在頁面上有數百萬個結果之前可能會凍結)。 –

+0

當然,這就是我要問的原因。 backbone.js如何與服務器通信以獲得結果的子集......請在這裏查看:http://backbonejs.org/#Collection-fetch我沒有看到fetch中的任何位置來指定過濾器變量。 – Matt

回答

1

在文檔中有一些地方可以傳遞jQuery選項。在這些選項中,您可以設置「數據」參數,該參數作爲查詢參數或表單參數傳遞,具體取決於它是POST還是GET。

jQuery.ajax選項也可以直接傳遞作爲提取選項, 所以抓取分頁集合中的特定頁面: Documents.fetch({數據:{頁:3}})