2011-03-29 86 views
0

我正在開發一個使用Django的自助餐廳管理系統(我的第一個Web開發項目,所以是的我是初學者),其中有兩種類型的用戶「Counter Counter」&「顧客「向Web應用程序中的用戶發送通知

現在,當前訂單的列表在櫃檯顯示爲表格。在顧客方面,有一張桌子可以顯示當前可用的菜餚。

有兩種類型的事件: -

  1. 客戶訂單的食物。
  2. 計數器根據可用性啓用/禁用菜餚。

因此,如果顧客點菜,我想加入 在櫃檯邊的表對於第二個事件,如果計數器啓用/禁用一道菜,我想客戶端表中添加/刪除菜行。

我想要一個實時解決方案。那麼,我該如何執行它?

回答

0

長輪詢是首選的解決方案。

0

看起來你需要兩個用戶輪詢服務器。每分鐘左右在JavaScript中使用計時器向服務器發出請求(這稱爲輪詢)。然後使用jQuery的優秀遍歷和操作實用程序來重建瀏覽器中的表格。

或者,如果你不想執行使用JavaScript更新視圖,並更願意堅持使用視圖渲染你有Django的..

有一個返回最後一次菜是服務器上的端點添加或刪除。有一個計時器將該時間與頁面呈現時間進行比較。如果已添加或刪除菜餚,請通過JavaScript刷新頁面。如果您這樣做,請不要將客戶端時間與服務器時間進行比較。您需要將服務器時間作爲JavaScript變量嵌入到頁面中。

+0

我無法理解您告訴我如何在不使用JavaScript的情況下實現的方式。據我所知,django沒有什麼可以做,一旦頁面加載。我是django的新手,所以可能是我不知道全部功能。 – 2011-03-29 16:47:07

+0

Django已經在渲染頁面,因此您可以使用JavaScript來查明頁面是否「髒」,然後使用JavaScript從服務器(a.k.a.,Django)重新請求頁面。合理?我不推薦這種方法,因爲它需要往返服務器,並且拒絕您使用輕量級AJAX的Web應用程序的好處 – adam 2011-03-31 20:26:08

相關問題