当前位置: 首页> 娱乐> 明星 > 北京网络推广公司排行_网络运维证_免费的云服务器有哪些_老司机们用的关键词有哪些

北京网络推广公司排行_网络运维证_免费的云服务器有哪些_老司机们用的关键词有哪些

时间:2025/7/11 15:51:48来源:https://blog.csdn.net/Trees__/article/details/144470211 浏览次数:0次
北京网络推广公司排行_网络运维证_免费的云服务器有哪些_老司机们用的关键词有哪些

【集成部署打包】vue3+django集成部署打包成exe 文件


文章目录

  • 【集成部署打包】vue3+django集成部署打包成exe 文件
    • 1. vue 打包部署配置
    • 2. django 打包部署配置
    • 3. 打包操作
  • 总结


1. vue 打包部署配置

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from "path"
// https://vite.dev/config/
export default defineConfig({plugins: [vue()],resolve: {alias: {"@": path.resolve("./src")}},// 将打包存放到web目录下,并且将所有的静态文件打包到static目录中build: {outDir: 'web',assetsDir:'static'}
})

在这里插入图片描述

npm run build 打包后的如上图所示,将打包后的文件全部拖进django项目中

在这里插入图片描述

2. django 打包部署配置

项目中setting.py 文件中

TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR, 'web')],  # 配置模板查找路径'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},},
]
# 静态资源url访问的前缀
STATIC_URL = 'static/'# 静态文件在开发过程中的查找目录
STATICFILES_DIRS = [os.path.join(BASE_DIR, "web/static"),
]# 收集静态文件后的存放目录
STATIC_ROOT = BASE_DIR / "staticfiles"

项目中 urls.py

from django.urls import path,include,re_path
from django.views.generic import TemplateViewurlpatterns = [path('', TemplateView.as_view(template_name='index.html'), name='index'),  re_path(r'^.*/$', TemplateView.as_view(template_name='index.html')),
]

3. 打包操作

  1. 安装 pyinstaller (在终端运行)
pip install pyinstaller
  1. 生成spec文件(在终端运行)
pyi-makespec -D manage.py

hiddenimports 刚开始是没有的,就是每次打包的时候都会出错,提示no module named xxx,这个xxx就是需要我们添加到hiddenimports列表里面的东西。用django写的项目的话,拿必然会用到的是以下5个,后面打包的过程中,如果还有需要隐藏的可再次手动添加。【主要根据报错进行添加,直到没有出现模块相关的报错】

'xxx.apps','rest_framework.authentication','rest_framework.permissions','rest_framework.parsers','rest_framework.negotiation','rest_framework.metadata'

下面是我的 manage.spec 配置

# -*- mode: python ; coding: utf-8 -*-a = Analysis(['manage.py'],pathex=[],binaries=[],datas=[],hiddenimports=['issue.apps','issue.urls','rest_framework.authentication','rest_framework.permissions','rest_framework.parsers','rest_framework.negotiation','rest_framework.metadata'],hookspath=[],hooksconfig={},runtime_hooks=[],excludes=[],noarchive=False,
)
pyz = PYZ(a.pure)exe = EXE(pyz,a.scripts,[],exclude_binaries=True,name='manage',debug=False,bootloader_ignore_signals=False,strip=False,upx=True,console=True,disable_windowed_traceback=False,argv_emulation=False,target_arch=None,codesign_identity=None,entitlements_file=None,
)
coll = COLLECT(exe,a.binaries,a.datas,strip=False,upx=True,upx_exclude=[],name='manage',
)
  1. manage.spec 配置好后,开始打包
pyinstaller manage.spec

打包生成dist(包在这)与build(临时文件, 没什么用),win+R输入 cmd进入终端到达 dist\manage目录下 ;输入manage.exe runserver --noreload 启动 exe

manage.exe runserver --noreload

注意:

如果出现如下的报错,表示找不到静态文件,将静态文件直接拖进 dist/manage/_internal 目录下即可解决问题

在这里插入图片描述
在这里插入图片描述


总结

以上就是今天要讲的内容,希望对大家有所帮助!!!

关键字:北京网络推广公司排行_网络运维证_免费的云服务器有哪些_老司机们用的关键词有哪些

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: