一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - 使用pyinstaller打包django的方法實現

使用pyinstaller打包django的方法實現

2022-01-17 10:36倔犟的貝殼 Python

本文主要介紹了使用pyinstaller打包django的方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

雖然django項目我們一般通過部署服務器進行發布,但是也有些情況,可能就是一個小小的數據管理應用,也就內部幾個人使用,想直接打包成一個應用,在沒有任何python環境的普通的機器上就能運行,內網能訪問就可以了。
pyinstaller 就能夠用來將python應用打包成可執行文件。

Step 1: 生成spec文件

?
1
pyi-makespec -D manage.py

執行成功后,會顯示如下信息,表示可以去構建可執行文件了

now run pyinstaller.py to build the executable

在目錄下面會生成一個 manage.spec的文件,相當于一個構建可執行文件的配置文件。打開文件,可以看一下,主要有兩個地方需要配置:

1.datas=[] 該配置用于配置static文件和templates文件
hiddenimports=[] 把settings里的install_apps 拷貝過來

?
1
2
3
4
5
6
7
8
datas=[('/Users/huanghuan/Documents/python學習/django/loftyha/static','./static')],
            hiddenimports=[ 'django.contrib.admin',
                   'django.contrib.auth',
                   'django.contrib.contenttypes',
                   'django.contrib.sessions',
                   'django.contrib.messages',
                   'django.contrib.staticfiles',
                   'shift',],

Step 2: 使用pyinstaller 構建可執行文件

?
1
pyinstaller manage.spec

待上述命令執行完,在目錄下面會生成dist和build目錄,在dist/manage目錄下,有一個可執行文件manage
cd dist/manage目錄下,命令行執行manage文件

?
1
./manage runserver ip:port --noreload

--noreload參數如果不加,有可能會報錯: RuntimeError('Script %s does not exist.' % py_script)

Traceback (most recent call last):
  File "manage.py", line 23, in <module>
  File "manage.py", line 19, in main
  File "django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "django/core/management/commands/runserver.py", line 61, in execute
    super().execute(*args, **options)
  File "django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "django/core/management/commands/runserver.py", line 96, in handle
    self.run(**options)
  File "django/core/management/commands/runserver.py", line 103, in run
    autoreload.run_with_reloader(self.inner_run, **options)
  File "django/utils/autoreload.py", line 640, in run_with_reloader
    exit_code = restart_with_reloader()
  File "PyInstaller/hooks/rthooks/pyi_rth_django.py", line 72, in _restart_with_reloader
  File "django/utils/autoreload.py", line 257, in restart_with_reloader
    args = get_child_arguments()
  File "django/utils/autoreload.py", line 244, in get_child_arguments
    raise RuntimeError('Script %s does not exist.' % py_script)

到此這篇關于使用pyinstaller打包django的方法實現的文章就介紹到這了,更多相關pyinstaller打包django內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.jianshu.com/p/8363793b1d41

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲一区二区三区免费视频 | 息与子中文字幕在线 | 国产精品区牛牛影院 | 久久久久久久久a免费 | 星星动漫在线观看免费 | 变态 另类 国产 亚洲 | 无限韩国视频免费播放 | 大伊香蕉在线精品不卡视频 | 国产欧美精品一区二区三区 | 黑人草 | 五月婷婷在线播放 | 国产男技师 | 欧美日韩在线成人看片a | 男女做污事 | 天堂在线中文无弹窗全文阅读 | 亚洲色图中文字幕 | 久久精品国产在热亚洲完整版 | 国产欧美亚洲精品第一页青草 | 国产欧美视频在线观看 | 男人影院在线观看 | 99国产热 | 啪啪免费入口网站 | 热巴在公交车h文 | 欧美xbxbxbxb大片| 成人久久网站 | 亚洲精品免费在线 | 国产精品一在线观看 | 逼逼爱| 小寡妇好紧进去了好大看视频 | 久久r视频 | 夫妻性生活影院 | 暖暖视频免费观看视频中国.韩剧 | 暖暖视频高清图片免费完整版 | 日本阿v在线播放 | 草草免费观看视频在线 | 女人扒开下面让男人桶爽视频 | 精品无人区一区二区三区 | 欧美日韩专区国产精品 | 国内老司机精品视频在线播出 | gaygayas男男免费中国 | 亚洲免费视 |