Django項(xiàng)目打包完整步驟以及可能出現(xiàn)的問題
Django項(xiàng)目打包的步驟以及可能出現(xiàn)的問題
1、環(huán)境
這里筆者使用的環(huán)境為Python3.7與Django3.2.1
2、安裝pyinstaller
使用命令pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller
此處使用了清華大學(xué)的鏡像網(wǎng)站
3、打包成exe
若想要打包的項(xiàng)目為單獨(dú)的py文件,則使用pyinstaller-F xxx.py
’打包
若想要打包的項(xiàng)目為一個(gè)的文件夾,則使用pyi-makespec -D manage.py
生成spec文件,執(zhí)行成功后,會(huì)顯示如下信息,表示可以去構(gòu)建可執(zhí)行文件了
now run pyinstaller.py to build the executable
在目錄下面會(huì)生成一個(gè) manage.spec的文件,我們可以打開看一下內(nèi)容:
然后運(yùn)行pyinstaller manage.spec
命令,生成打包的exe文件
打包程序的運(yùn)行方式: 在manage.exe的位置打開cmd,輸入manage runserver ip:port --noreload
運(yùn)行服務(wù)即可
4、新建直接運(yùn)行的程序
新建一個(gè)run.py文件
import os os.system('manage.exe runserver 8000 --noreload') input()
pyinstaller -F run.py
在dist目錄下得到一個(gè)run.exe,雙擊運(yùn)行run.exe 就能運(yùn)行django項(xiàng)目。
問題一:運(yùn)行服務(wù)是會(huì)提示No module named XXX
這是因?yàn)镈jango有些module不會(huì)自動(dòng)收集,需要手動(dòng)添加
解決方法:在manage.spec文件中修改hiddenimports=[]為hiddenimports=[‘users’,‘users.apps’,‘sql_server.pyodbc.compiler’],提示缺少什么module就在此處添加什么。(但是很惡心人的是每次只會(huì)提示一個(gè)錯(cuò)誤,需要一直修改manage.spec文件,然后重新打包)
問題二:打開網(wǎng)頁(yè)出現(xiàn)TemplateDoesNotExist 錯(cuò)誤
解決方法:根據(jù)錯(cuò)誤的提示消息,把項(xiàng)目中的模板文件templates拷貝到相應(yīng)的位置,刷新頁(yè)面即可。(如把templates放到manage文件夾里)
總結(jié)
到此這篇關(guān)于Django項(xiàng)目打包完整步驟以及可能出現(xiàn)的問題的文章就介紹到這了,更多相關(guān)Django項(xiàng)目打包步驟內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python編程實(shí)現(xiàn)粒子群算法(PSO)詳解
這篇文章主要介紹了Python編程實(shí)現(xiàn)粒子群算法(PSO)詳解,涉及粒子群算法的原理,過程,以及實(shí)現(xiàn)代碼示例,具有一定參考價(jià)值,需要的朋友可以了解下。2017-11-11golang/python實(shí)現(xiàn)歸并排序?qū)嵗a
這篇文章主要給大家介紹了關(guān)于golang/python實(shí)現(xiàn)歸并排序的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08Django使用channels + websocket打造在線聊天室
本文將教你如何使用channels + websocket打造個(gè)在線聊天室。一共只有四步,你可以輕松上手并學(xué)會(huì)。項(xiàng)目中大部分代碼是基于channels的官方文檔的,加入了些自己的理解,以便新手學(xué)習(xí)使用。2021-05-05使用wxpy實(shí)現(xiàn)自動(dòng)發(fā)送微信消息功能
這篇文章主要介紹了使用wxpy實(shí)現(xiàn)自動(dòng)發(fā)送微信消息功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02python調(diào)用pymssql包操作SqlServer數(shù)據(jù)庫(kù)的實(shí)現(xiàn)
本文主要介紹了python調(diào)用pymssql包操作SqlServer數(shù)據(jù)庫(kù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06