2011-01-10 252 views

回答

2

對於初學者來說,你必須與桌面技術,如TK/Tcl的更換網頁UI。

如果這樣做,您可能不希望使用HTTP作爲客戶端和服務之間的協議。

Django是一個Web框架。如果你切換到桌面,你必須放棄Django。

+0

我認爲他的觀點更多的是創建一個前端,而不是後端。但他可能還不知道。 – milkypostman 2011-01-10 14:27:30

1

我會嘗試複製與PyQt toolkit Django的應用程序的功能。

在QtWebKit的幫助下,您實際上可以在PyQt應用程序中嵌入Web內容。我會張貼一些可能有用的鏈接,但顯然我有太低的聲譽發佈多個:)

+0

PyQt中QtWebKit的文檔可以在這裏找到:http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qtwebkit.html。如何在Python中使用QtWebKit呈現網頁的簡單示例可以在這裏找到:http://www.rkblog.rk.edu.pl/w/p/webkit-pyqt-rendering-web-pages/。 – aknuds1 2011-01-10 15:30:32

1

有兩個地方,你可以去試試脫鉤的觀點,並把它變成一個新的桌面應用程序。首先,您可以使用現有的控制器和模型,並對其進行調整。其次,您只能使用現有的模型並構建新的視圖和控制器。

如果您還沒有密合不夠,你可以分離從應用程序的其餘模型中MVC的原則,你可以簡單地重寫了整個事情。如果你被迫走這條路,就完全按照django和http保釋(正如duffymo所建議的那樣)。

您還必須根據性能要求和服務的「沉重程度」來評估這些解決方案。如果你有嚴格的性能要求,那麼依靠HTTP層就會阻礙你的發展,爲你的模型提供一個簡單的API是最好的選擇。

顯然有很多可能的解決方案,但是這是我想借此來決定一個合適的有什麼辦法...

2

我想你應該剛剛創建連接到Web服務器的應用程序。將RESTful API調用到您的django應用程序中有一個很好的答案。這意味着你基本上只是爲你的服務器創建一個新的前端。

Using django-rest-interface

它沒有意義改寫整個 Django應用程序的桌面應用程序。我的意思是,你想在哪裏存儲數據?

0

有一個叫Camelot項目,這似乎試圖Django的功能一樣使用PyQt的桌面上的結合。還沒有嘗試過。

+0

我嘗試過使用PyGtk,它適合我 – 2011-01-25 13:51:43

0

我正在考慮類似的問題。

是否足以忍受一個最小化的PyQt Gui,使您能夠通過QtWebkit從本地主機呈現djando-website(通過循環界面清除TCP/HTTPS)?

您似乎需要的只是一個最小的Python-Broser,它在Web服務器中衝擊構建(我猜你甚至可以直接調用Django來獲取html有效載荷,而無需通過HTTP/TCP層)。

相關問題