Dotenv.load_dotenv() не загружает переменные среды в модели pydanticPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Dotenv.load_dotenv() не загружает переменные среды в модели pydantic

Сообщение Anonymous »

У меня есть проект, в котором я запускаю файл run.py из корневого каталога. В этом файле у меня есть следующий код:
dotenv.load_dotenv()

if not os.getenv("SECRET"):
logger.error(".ENV FAILURE")
exit()
else:
logger.info(".ENV SUCCESS")
do_stuff()

run.py успешно считывает данные из моего dotenv. Мой регистратор также использует dotenv и работает нормально. Программа не завершает работу и переходит к do_stuff
do_stuff() продолжает выполнять все свои действия, затрагивая несколько разных модулей. Часть этого материала представляет собой pydantic модель, что-то вроде:
class LoginForm(BaseModel):
username: str = os.getenv('USERNAME')
password: str = os.getenv('PASSWORD')

Несколько раз это работало, но теперь эти поля постоянно пусты. Кажется, что dotenv в некоторых частях программы работает нормально, но не загружается в других?
Я попробовал это, но безуспешно:
class LoginForm(BaseModel):
username: str = os.getenv('USERNAME')
password: str = os.getenv('PASSWORD')

class Settings(BaseSettings):
model_config = SettingsConfigDict(env_file='.env')


Подробнее здесь: https://stackoverflow.com/questions/784 ... ntic-model
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»