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 и он сработал.