Django:存储唯一,重要且经常更改的常量

时间:2019-06-05 14:56:36

标签: django constants

我在后端使用django。 我想问一下如何在django中存储导入常量:   1)独特的GST率,即0.18,某些开关(例如常量)可以打开/关闭某些功能   2)可以经常更改,需要由一些非技术人员经常更新。

如何存储此类常量。

  1. 是否应将其存储在设置文件中?这样就不会在不更改代码的情况下进行更新。似乎不是一个不错的选择

2。应该存储为环境变量吗?仍然需要一些努力。

3在高速缓存中。似乎是一个不错的选择。但是无法弄清楚在缓存中存储的致命性。

4在数据库中。看起来不错,但是结构会怎样。会有一个包含所有导入常量的表,这些导入常量具有简单的属性,例如键和值,并且键是唯一的。

5)db和缓存的组合

有人可以指导我什么是最好的选择。

1 个答案:

答案 0 :(得分:0)

在您讨论的场景中。

我认为最佳选择是用键和值制作一个常数表

class Constant(models.Model):
    key = models.CharField(max_length=50)
    value = models.DecimalField(max_digits=5, decimal_places=2)

然后,在其上实施 CRUD ,允许所需人员使用表单或“管理面板”对其进行更改。