2013-01-03 14 views
0

我設置了一個普通的vanilla Django應用程序(沒有backbone.js或其他MVC框架)並集成了Tastypie。Django REST API - 在Backbone.js中重複使用數據形成單個調用

從本質上講,我需要在每個頁面上提供的所有信息都可以通過一次調用API獲得。某些頁面(如「mysite.com/cityA」)只會簡單地將該信息過濾到城市A的信息。

我習慣使用backbone.js,其中一個集合可以被多個視圖共享。我怎麼能在普通的Django中做到這一點?我會在「index.html」模板中進行調用,從中擴展其他模板?對於最佳實踐,我有點困惑。

回答

0

通常在Django中,您會編寫一個view,然後呈現它並在模板中包含URL。骨幹可以重用所有請求的數據,因爲當用戶使用應用程序作爲與Django的典型交互時,它通常不需要進行HTTP往返。

我會說默認的交互模型是不同的。如果你在後端有一個數據庫,你可能需要在你的Django視圖中使用某種緩存 - 這會減少響應時間(但你會保留HTTP往返)。您可以使用某些客戶端緩存(例如,通過localstorage),但默認的Django模型仍然在視圖和渲染模板之間搖擺。

+0

當我開始優化時,肯定會做某種形式的緩存。理論上,我可以在視圖中操作單個調用的數據,並根據需要返回子集?我覺得最好是緩存來自單個調用的數據 - 也許在tastypie級別 - 然後讓視圖操縱單個調用,這本身很小,並且會包含我所需要的全部內容。 – snakesNbronies

相關問題