Size: a a a

2020 March 15

АП

Агент Печенька in Python Flask
Там в dynaconf прям интеграция с фласком есть, очень удобно.
источник
2020 March 16

NL

Nikita L in Python Flask
Агент Печенька
В реальных проектах конфиг это не питон код.
А например конфиглоадер и условно .env файл.
Или если совсем по взрослому то система конфигурации типа counsul или например vault.
А в чем минусы хранения конфигов в .py файлах?
источник

T

Tishka17 in Python Flask
Nikita L
А в чем минусы хранения конфигов в .py файлах?
В чем минусы хранить данные в виде исполняемого кода?
источник

T

Tishka17 in Python Flask
Nikita L
А в чем минусы хранения конфигов в .py файлах?
photo.jpg.exe
источник

АП

Агент Печенька in Python Flask
Nikita L
А в чем минусы хранения конфигов в .py файлах?
1. Конфиг не должен быть исполняемым форматом, иначе возникает соблазн напихать в конфиг ещё и логику по обработке конфига. Принцип разделения ответственнности.
2. Конфиг это та часть программы которая может и будет редактироваться не программистами, например сисадминами/девопсами. Соответсвенно лучше чтобы конфиг был в том формате который понятен не программисту. Питон код явно не подходит под этот критерий.
3. Конфиг обычно хранят вне репозитория, а код а репозитории.
источник

АП

Агент Печенька in Python Flask
И конфиг формат должен быть максимально "тупым" простым, меньше шанс получить ошибку.
источник

T

Tishka17 in Python Flask
У меня в текущем проекте вообще нет конфига. Штук 10 переменных окружения и всё
источник

АП

Агент Печенька in Python Flask
Ну так это тоже конфиг.
источник

NL

Nikita L in Python Flask
Понял, спасибо
источник

T

Tishka17 in Python Flask
В виде файла нету по сути
источник

АП

Агент Печенька in Python Flask
Просто задаёт его ваш оркестратор.
источник

T

Tishka17 in Python Flask
Угу
источник

АП

Агент Печенька in Python Flask
источник

N

Nick Name in Python Flask
Агент Печенька
1. Конфиг не должен быть исполняемым форматом, иначе возникает соблазн напихать в конфиг ещё и логику по обработке конфига. Принцип разделения ответственнности.
2. Конфиг это та часть программы которая может и будет редактироваться не программистами, например сисадминами/девопсами. Соответсвенно лучше чтобы конфиг был в том формате который понятен не программисту. Питон код явно не подходит под этот критерий.
3. Конфиг обычно хранят вне репозитория, а код а репозитории.
на Хабре перевод мегаучебника по фласку вообще предлагает в класе все переменные конфига хранить)
источник

АП

Агент Печенька in Python Flask
Нужно понимать что Мигель не охватывает всё в мире в одной книге. Для его целей и задач (показать что и как фласк умеет) конфига в классе вполне достаточно.
источник

АП

Агент Печенька in Python Flask
Тут же вопрос был про то как в реальном мире.
источник

T

Tishka17 in Python Flask
В классе - ок. Только он заполняется из конфигурационного файла, а не из кода. Либо выбирается один из вариантов на основе параметров заданных в конфигационном файле.

Код должен быть недоступен админы для редактирования
источник

N

Nick Name in Python Flask
Агент Печенька
Тут же вопрос был про то как в реальном мире.
аа, тогда ладно)
источник

АП

Агент Печенька in Python Flask
Tishka17
В классе - ок. Только он заполняется из конфигурационного файла, а не из кода. Либо выбирается один из вариантов на основе параметров заданных в конфигационном файле.

Код должен быть недоступен админы для редактирования
+
источник

N

Nick Name in Python Flask
Tishka17
В классе - ок. Только он заполняется из конфигурационного файла, а не из кода. Либо выбирается один из вариантов на основе параметров заданных в конфигационном файле.

Код должен быть недоступен админы для редактирования
не понял. типа динамические конфиги? так это ерунда
источник