Переключение с локального на прод в файле .env не работает

У меня есть приложение django. И я использую файл .env для настроек окружения.

Но вот что я заметил: если я переключаюсь с настроек локального окружения на настройки производственного окружения и наоборот, и перезапускаю службу django. Ничего не меняется.

Итак, у меня есть мои локальные настройки в файле .env. А файл .env находится в том же каталоге, что и файл settings.py:

DEBUG=1
SECRET_KEY="django-insecure-kwuz7%@967xvpdnf7go%r#d%lgl^c9ah%!_08l@%x=s4e4&+(u"
DJANGO_ALLOWED_HOSTS=localhost 127.0.0.1 [::1]
DB_NAME="dierenwelzijn"
DB_USER="dierenwelzijn"
DB_PASS="8Bit235711"
DB_HOST=localhost
DB_PORT=5432

и в файле settings.py у меня есть следующее:

from django.utils.encoding import force_str
import django
from os import environ
from pathlib import Path
import os
import dotenv
dotenv.read_dotenv()
django.utils.encoding.force_text = force_str

BASE_DIR = Path(__file__).resolve().parent.parent

SECRET_KEY = os.environ.get('SECRET_KEY')
DEBUG = bool(int(os.environ.get('DEBUG', 1)))

ALLOWED_HOSTS = ['localhost', '0.0.0.0', '192.168.1.135', '10.0.2.2', '10.14.194.138', '0.0.0.0',
                 "127.0.0.1",
                 'zijn.azurewebsites.net', 'zijndocker.azurewebsites.net',
                 'https://dierenwelzijndocker.azurewebsites.net']
ALLOWED_HOSTS.extend(
    filter(
        None,
        os.environ.get('ALLOWED_HOSTS', '').split(" "),
    )
)

CSRF_TRUSTED_ORIGINS = [
    "https://dockerzijn.azurewebsites.net",
    "https://zijndocker.azurewebsites.net",
    "http://0.0.0.0:8000",
    "http://10.0.2.2:8000", "http://localhost:8000",
    "http://10.14.194.138:8000",  "http://127.0.0.1:8000/"]

и я перезапускаю приложение django с помощью команды: python manage.py runserver

Он по-прежнему использует переменные окружения производства. Потому что если я перейду к:

http://127.0.0.1:8000/

Not Found Запрашиваемый ресурс не найден на этом сервере.

И он также использует производственную базу данных. А не локальную базу данных.

Так есть ли какая-то команда, которую нужно использовать, чтобы заставить приложение django заново взять файл .env? Что-то насчет кэша? Я также удалил кэш.

Вопрос: как принудительно создать файл .env с реальными настройками в нем?

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