170 похожих чатов

Привет, вопрос тем кто использовал pydantic. Я делаю класс с

конфигом через BaseSettings. у меня есть переменная USER и в файле .env есть переменная USER, но pydantic всё время переписывает эту переменную значением этой переменной из моего environment операционной системы. Как мне сделать или что бы он не переписывал или что бы просто в конечном конфиге была переменная USER со значением из файлы .env ?

14 ответов

25 просмотров

выкинуть .env и взять какой-то формат конфига, который ты будешь больше контролировать. Например ini или toml

Алиса Кассель-Королёва
define ini

что-то невнятное, но которое конфигпарсер жрет

Tishka17
что-то невнятное, но которое конфигпарсер жрет

То есть когда у ini-файла может быть фиг знает сколько вариаций, у нас всё хорошо, для .env — это большая проблема? :-D

evle
То есть когда у ini-файла может быть фиг знает ско...

нет, это такая же проблема, но томл только в 3.11 из коробки. Но как минимум 1. ини не пытается изображать переенныее окружния 2. дефолтная реализация не пытается искать файл хоть где-нибудь, а грузит по фиксированному пути 3. если файла нет, есть явное повдение - ошибка

ZRoman- Автор вопроса

тут всю эту магию делает не .env файл, а pydantic

evle
То есть когда у ini-файла может быть фиг знает ско...

дотенв штука более стандартизированная мне кажется

Tishka17
нет, это такая же проблема, но томл только в 3.11 ...

хз я дотенв воспринимаю как штуку на которой я могу сделать source и запустить программу и всё будет хорошо

Алиса Кассель-Королёва
почему?

Потому что тот дотэнв который либы читают работает немного не так как баш. Например, не умеет в $() и зато умеет пробелы около =. Ну и экспорт надо не забывать тогда, если оррентируешься на source

Tishka17
Потому что тот дотэнв который либы читают работает...

ну вроде бы принято писать без пробелов вокруг равно и тем более shell expansions

Алиса Кассель-Королёва
ну вроде бы принято писать без пробелов вокруг рав...

Ну тем не менее python-dotenv кушает с пробелами. И даже умеет подставлять переменные

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта