看起来文件夹结构很好,但缺少导入。在我的manage.py
文件中,我添加了行“import Dashboard
".
However, after I tried to run pyinstaller again it said it was missing more modules, like django.contrib.admin.apps
. The missing modules seem to be coming from my settings.py file.
为了导入这些,我将它们添加到我的 SPEC 文件中。每当我之前运行 pyinstaller 时,它都会添加三个新项目:一个 build 文件夹、一个 dist 文件夹和一个 Dashboard.spec 文件。在 SPEC 文件中,我将设置中安装的应用程序名称(加上 .apps)附加到隐藏导入列表中。
Here is the entirety of my .spec file.
这解决了问题并且编译得很好。
EDIT:
我最终添加了比上面列出的更多的隐藏导入。这是我当前使用的所有隐藏导入。
hiddenimports=['django.contrib.admin.apps', 'django.contrib.auth.apps', 'django.contrib.contenttypes.apps', 'django.contrib.sessions.apps', 'django.contrib.messages.apps', 'django.contrib.staticfiles.apps', 'django.contrib.messages.middleware', 'django.contrib.sessions.middleware', 'django.contrib.sessions.serializers', 'django.template.loaders', 'django.contrib.auth.context_processors', 'django.contrib.messages.context_processors']