Docker и django Нет модуля с именем 'corsheaders'

Я пытаюсь докеризировать существующий проект django.

У меня установлены корсхедеры

и он включен в мои установленные приложения следующим образом:

INSTALLED_APPS = [
    'corsheaders',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

]

и в промежуточном ПО

MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    ]

после этого я собираю свой докер, используя

docker-compose --build

и затем запустите его

docker-compose up

но всегда одна и та же ошибка

 ModuleNotFoundError: No module named 'corsheaders'

Я пытался удалить corsheaders из моих установленных aps, но затем я получаю

 ModuleNotFoundError: No module named 'restframework'

ps: если я запускаю сервер через py manage.py runserver, он работает отлично.

вам нужно добавить restframework и передать cors в конце

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'rest_framework.authtoken',
    'corsheaders',

]

Я решил эту проблему, когда установил пакет через :

pip install django-cors-headers

он не устанавливается в venv самого проекта. или через:

py -m pip install django-cors-headers

Так что я скопировал его в venv и он сработал.

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