我有一个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 app中存储常量的最佳做法是什么?
答案 0 :(得分:5)
对于仅由一个模块使用的常量,只需在该模块中定义它们即可。对于整个项目使用的常量,约定是将它们添加到您的设置文件中。对于整个单个应用程序中使用的常量,我认为你的每个应用程序有一个constants.py的方法很好。
答案 1 :(得分:-1)
如果某些应用程序在不同的Django项目中共享,则设置中的存储常量存在问题。
在这种情况下,从我的角度来看,建议添加一个常量应用程序。此外,您还将获得django admin在配置上的优势
答案 2 :(得分:-2)
启动__init__.py
文件并将所有变量导入其中。然后,您可以根据需要轻松获取变量。