python - Pyinstaller with Django: ModuleNotFoundError: No Module Named django.contrib.messages.apps
问题描述
我正在尝试在 cmd 行中运行打包的 python 应用程序,但出现错误:
ModuleNotFoundError: No Module Named 'django.contrib.messages.apps'
我使用来自https://github.com/pyinstaller/pyinstaller/issues/2332的答案来消除类似的错误'django.contrib.admin.apps'
,所以有人知道如何删除这个吗?
解决方案
我有同样的问题Django 2.0.4
。似乎它不支持最新版本的 Django。问题是 PyInstaller 无法解析隐藏的导入,因此您必须手动将它们添加到挂钩中。编辑.spec
文件,这是在第一次构建后创建的pyinstaller
,用缺少的包填充数组,hidden_imports
并制作构建指向.spec
文件而不是manage.py
. 不幸的是,在添加了几个包后,出现了新的错误。
https://pythonhosted.org/PyInstaller/when-things-go-wrong.html
Pyinstaller
与Django 1.8一起工作正常,所以尝试使用这个版本。基于 Django 1.8 的项目构建成功,运行良好runserver
推荐阅读
- c++ - 具有格式错误的默认模板参数的未使用成员模板是否需要诊断?
- azure - 为什么我的 Azure 应用服务在未经我同意的情况下进行扩展?
- wpf - 奇怪的边框仍然停留在按钮上;即使在修改了控制模板之后
- kotlin - 为什么 Kotlin 内联函数参数不能为空
- android - 有什么方法可以使用 Detox 在 Android 上的 Picker 中选择一个项目?
- database - 戈姆“插入忽略”
- python - 如何使用 pandas 将层次列合并为 1 列?
- php - (Laravel/PHP) SQL 查询,从表中选择与数组中的 product_id 和variation_id 匹配的所有订单
- perl - Perl:将哈希作为子哈希添加到简单哈希
- node.js - NodeJs Express 如何处理从前端发送的项目(参数)?