Ошибка AppRegistryNotReady при упаковке приложения Django с помощью Pyinstaller

Я использую Django 3 (также пробовал с 2.2) и pyinstaller для создания автономного приложения на основе Django.

Я запускаю pyinstaller таким образом:

pyinstaller --onedir --clean --name=projectx manage.py --additional-hooks-dir=projectx_backend/

У меня есть пользовательский хук с таким кодом:

from PyInstaller.utils.hooks import collect_submodules

hiddenimports = collect_submodules('django.contrib')

И файл __init__.py в моей папке projectx_backend/settings со следующим содержанием:

from .desktop import *

Содержание manage.py таково:

#!/usr/bin/env python
import os
import sys

if __name__ == '__main__':
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'projectx_backend.settings.desktop')
    import django
    from django.conf import settings
    from projectx_backend.settings import desktop

    settings.configure(default_settings=desktop)
    django.setup()

    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)

При попытке собрать exec он жалуется на некоторые отсутствующие модули. Я убедился, что эти модули установлены в моем текущем окружении, но я думаю, что я загружаю их неправильно.

Вернуться на верх