如何将Django网页应用转换为桌面应用程序
如何把用Django和Python开发的网站转换成桌面应用程序?我对Python和Django还很陌生,能不能请你们帮帮我?
提前谢谢你们!
8 个回答
2
我会尝试用PyQt工具包来实现Django应用的功能。
其实,你可以在PyQt应用中嵌入网页内容,这要靠QtWebKit来帮忙。我想分享一些可能有用的链接,但看起来我的信誉太低,不能发超过一个链接呢 :)
3
你可以通过一些代码把一个Django应用转换成桌面应用,使用的是pywebview。首先,在manage.py所在的文件夹里创建一个叫gui.py的Python文件。然后通过pip安装pywebview,接着在gui.py里写代码。
import os
import sys
import time
from threading import Thread
import webview
def start_webview():
window = webview.create_window('Hello world', 'http://localhost:8000/', confirm_close=True, width=900, height=600)
webview.start()
window.closed = os._exit(0)
def start_startdjango():
if sys.platform in ['win32', 'win64']:
os.system("python manage.py runserver {}:{}".format('127.0.0.1', '8000'))
# time.sleep(10)
else:
os.system("python3 manage.py runserver {}:{}".format('127.0.0.1', '8000'))
# time.sleep(10)
if __name__ == '__main__':
Thread(target=start_startdjango).start()
start_webview()
最后,用命令python gui.py运行这个文件。这样就会出现一个像桌面应用一样的窗口。
3
我觉得你应该创建一个可以连接到网络服务器的应用程序。关于如何在你的django应用中使用RESTful API调用,有一个很好的答案。这意味着你基本上是在为你的服务器创建一个新的前端。
把整个django应用重写成桌面应用是没有意义的。我是说,你想把数据存储在哪里呢?