2024-05-14 00:55:42 发布
网友
最初的需求是有一个面向外部的应用程序,我们将使用一个服务器。然而,现在所有的代码都完成了,长远的愿景已经改变。。。要求是有一个面向内部的应用程序,没有服务器(物理或远程)。在
将使用该应用程序的团队将是5个用户在同一个网络上,每个人都有单独安装在他们的桌面上的应用程序。在
我的问题是,将这个应用程序作为一个包部署到每个人的机器上,他们可以轻松地自行安装。如果不输入python,应用程序如何总是在每个人的机器上运行管理.py运行服务器?在
您可以使用py2exefor Windows或py2app将python应用程序转换为可执行文件,以启动Django应用程序。在
我不得不做同样的事情。我的解决方案是使用PyInstaller,它将所有包和文件打包到一个整洁的分发文件夹中,其中包含一个可执行文件。在
首先,查看this link以获得教程。老实说,光是这一点对我来说并不管用,但对你来说却是可行的。因此,我将在下面记录一些需要注意的事项,并从这里继续,好像它对您来说是完美的。在
PyInstaller在您的管理.py文件,它将为您创建三个新对象:dist文件夹、build文件夹和myAppName.spec文件。dist文件夹中是项目的可执行文件。要将这个项目部署到其他地方,只需要dist文件夹(甚至是其中的myAppName文件夹)。只要把它拉上拉链就可以了。在
dist文件夹中的可执行文件不是通过单击它来运行的,它仍然需要您键入python manage.py runserver。为了解决这个问题,我创建了一个指向可执行文件和modified it's target的快捷方式。因此,如果项目的路径是C:\path\to\proj,那么快捷方式的目标将是C:\path\to\proj runserver。这将允许您双击快捷方式并运行本地服务器。如果您还想在同一次单击中打开web浏览器,make a batch file。如果您不喜欢打开控制台,try TrayIt。在
python manage.py runserver
C:\path\to\proj
C:\path\to\proj runserver
如果你想在你的项目上重新运行PyInstaller,为了速度,去掉那些dist并构建文件夹,但是保留这个.SPEC文件并在上面运行PyInstaller。如果你在乎的话,它可以帮助你更具体地了解这个过程。在
如上所述,当我在Django应用程序上运行PyInstaller时,我有一些问题需要解决。在
dist\myAppName\django\contrib\admin\templates
dist/myAppName
excludes
如果你的PyInstaller体验比我的好,请告诉我。我想我的问题可能只是个别的例子。在
您可以使用py2exefor Windows或py2app将python应用程序转换为可执行文件,以启动Django应用程序。在
我不得不做同样的事情。我的解决方案是使用PyInstaller,它将所有包和文件打包到一个整洁的分发文件夹中,其中包含一个可执行文件。在
首先,查看this link以获得教程。老实说,光是这一点对我来说并不管用,但对你来说却是可行的。因此,我将在下面记录一些需要注意的事项,并从这里继续,好像它对您来说是完美的。在
PyInstaller在您的管理.py文件,它将为您创建三个新对象:dist文件夹、build文件夹和myAppName.spec文件。dist文件夹中是项目的可执行文件。要将这个项目部署到其他地方,只需要dist文件夹(甚至是其中的myAppName文件夹)。只要把它拉上拉链就可以了。在
dist文件夹中的可执行文件不是通过单击它来运行的,它仍然需要您键入
python manage.py runserver
。为了解决这个问题,我创建了一个指向可执行文件和modified it's target的快捷方式。因此,如果项目的路径是C:\path\to\proj
,那么快捷方式的目标将是C:\path\to\proj runserver
。这将允许您双击快捷方式并运行本地服务器。如果您还想在同一次单击中打开web浏览器,make a batch file。如果您不喜欢打开控制台,try TrayIt。在如果你想在你的项目上重新运行PyInstaller,为了速度,去掉那些dist并构建文件夹,但是保留这个.SPEC文件并在上面运行PyInstaller。如果你在乎的话,它可以帮助你更具体地了解这个过程。在
需要注意的问题:
如上所述,当我在Django应用程序上运行PyInstaller时,我有一些问题需要解决。在
dist\myAppName\django\contrib\admin\templates
文件夹中。在dist/myAppName
文件夹中。贴在那里就行了。在excludes
列表中添加许多模块,这样我的dist文件夹就不会很大了。在如果你的PyInstaller体验比我的好,请告诉我。我想我的问题可能只是个别的例子。在
相关问题 更多 >
编程相关推荐