Лучший способ хранения констант в Django

У меня есть приложение Django, и я использую GitHub для CI. Теперь я сталкиваюсь с проблемой, что у меня возникает конфликт слияния с импортом констант каждый раз, когда я сливаюсь. У других разработчиков константы импорта часто меняются, как и у меня. Дерево каталогов выглядит так:

main_app > 
...main_app 
...api 
...aws_lambda 
...billing 
...utils 
...and many other directories

Каждое под-приложение имеет свой собственный файл Constants.py. Импорт констант выглядит так:

from utils.constants import const1, const2, const3, const4 
from billing.constants import const5, const6

Как мне нужно переписать этот импорт, чтобы уменьшить конфликты слияния в будущем? Есть ли лучший способ, чем тот, что ниже?

import utils.constants as utils_const
import billing.constants as billing_const
...
var = utils_const.const1

Как лучше всего хранить константы в приложении Django?


person v18o    schedule 11.01.2018    source источник


Ответы (2)


Для констант, которые будут использоваться только одним модулем, просто определите их в этом модуле. Константы, которые используются во всем проекте, принято добавлять в файл настроек. Для констант, используемых в одном приложении, я думаю, что ваш подход с наличием Constants.py для каждого приложения подходит.

person sbywater    schedule 11.01.2018

Существует проблема с константой хранения в настройках, если некоторые приложения совместно используются в другом проекте django.

В этом случае, с моей точки зрения, рекомендуется добавить постоянное приложение. Также вы получите преимущество администратора django при настройке

person velly.zhou    schedule 04.06.2020