в нужных местах насколько плохая идея?
Меня смущает множественное число у "местах".
Джанго конфиги по всему проекту из сеттингов размазываются и норм.
Нормальная
Я про импорт из settings
Смотря что в этом "файле конфига"
Ну, от этого потом получается достаточное количество страданий. За что, собственно, джангу и ругают.
И я про это же. Глобалы-хуебалы со всеми их недостатками.
https://t.me/advice17/5
Ну и да, даже у джанго всё-таки грузится из файла конфиг в одном месте, а что делать с путём до конфига в нескольких местах — я не очень понимаю.
А какие варианты? В замыкания совать?
Там же написано, что DI.
При чем здесь замыкания вообще? Настройки нужно загружать в одном месте (например в точке входа в приложение) и передавать туда где они нужны явно.
Сделал у класса метод from_file, но не сделал from_dict (:
Кстати, от глобалов там не так много же проблем, это всё-таки ближе к константам.
Ну нет, как раз таки настройки загружаются из внешнего источника и константами не являются, хотя их часто с константами путают. Ты их можешь хотеть переопределить например в тестах. Использование глобальных настроек может приводить к повсеместным манки-патчам в разных местах со всеми вытекающими последствиями.
Ну, в случае с settings.py источник типа не внешний. Импорт за внешний источник обычно не очень воспринимается. И проблемы от глобалов как бы сглаживаются (потому джанговское решение хоть как-то работоспособно на больших проектах, а не жуткий треш и угар). Но сглаживаются не все, и это проблема. Но есть и плюс — это просто для реализации. Что ни говори, DI всё-таки требует больше усилий.
Непосредственно settings.py да, но как только ты начинаешь пилить приложение которое будет работать в реальном мире, в settings.py начинают поступать данные из внешнего мира.
Хм. Например? Ну, то есть я, наверное, понимаю о чём ты, но это ж не всегда так.
Обсуждают сегодня