VS Code не видит виртуальные переменные среды в файле .env при запуске django

Я впервые пытаюсь установить соединение с postgres и использовать виртуальные переменные среды. Я создал файл .env и поместил его в папку настроек, но переменная базы данных отсутствует каждый раз, когда я пытаюсь использовать manage.py runserver. Есть ли способ заставить его работать на windows? Перемещение файла .env рядом с моей виртуальной средой тоже не помогло. Я также попробовал набрать set DATABASE_URL='postgres://username:password@localhost:5432/authors-live' тоже не сработало.

Структура папки:

MASTERDJANGOWITHDOCKER

-env (папка виртуальной среды)

-authors-src

--manage.py

--.env

--authors_api

---settings

----base.py

----.env

(оба файла .env абсолютно одинаковы)

settings/base.py

import environ

env = environ.Env()

ROOT_DIR = Path(__file__).resolve().parent.parent.parent  # need three to get to manage.py level

# points django to where the apps are stored
APPS_DIR = ROOT_DIR / 'core_apps'

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

DATABASES = {
    'default': env.db('DATABASE_URL')
}

.env файл

DATABASE_URL='postgres://username:password@localhost:5432/authors-live'
DJANGO_SECRET_KEY="django-insecure"

сообщение об ошибке

...
File "C:\Python39\lib\os.py", line 679, in __getitem__
    raise KeyError(key) from None
KeyError: 'DATABASE_URL'
...

File "C:\Users\...\authors-haven-api\authors-src\env\lib\site-packages\environ\environ.py", line 371, in get_value
    raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured: Set the DATABASE_URL environment variable

Я забыл строчку:

environ.Env.read_env(os.path.join(BASE_DIR / 'settings', '.env'))

Я не понимаю, почему в учебнике, который я нашел, он не нужен, а в моем коде почему-то нужен.

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