Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在django中存储用户可编辑常量_Python_Django - Fatal编程技术网

Python 在django中存储用户可编辑常量

Python 在django中存储用户可编辑常量,python,django,Python,Django,我想存储一些不经常更改的系统常数。 我用django模型在数据库中创建了一个设置表来存储它们,但是这个表只有一个条目,我用django admin更改了这些设置 有没有另一种方法可以在不创建数据库的情况下存储一些变量?我引述,您需要一些不经常更改的系统常量。为此,您可以在settings.py文件(或其他文件)中定义自己的变量,并通过导入来使用它们。 最合适的方法是创建一个新文件并将其导入settings.py: SETTING_1 = "/home/path/to/an/executable"

我想存储一些不经常更改的系统常数。 我用django模型在数据库中创建了一个设置表来存储它们,但是这个表只有一个条目,我用django admin更改了这些设置

有没有另一种方法可以在不创建数据库的情况下存储一些变量?

我引述,您需要一些不经常更改的系统常量。为此,您可以在
settings.py
文件(或其他文件)中定义自己的变量,并通过导入来使用它们。
最合适的方法是创建一个新文件并将其导入
settings.py

SETTING_1 = "/home/path/to/an/executable"
SETTING_2 = False
from settings_site import * 
然后,在
设置.py
中:

SETTING_1 = "/home/path/to/an/executable"
SETTING_2 = False
from settings_site import * 
它将使
SETTING.*
变量(尽管给出了有用的名称)可以在项目的设置中访问,并且即使您使用的是VCS(SVN、Git…),您也可以更改文件


否则,您仍然可以基于配置文件实现解决方案,通过自定义视图进行编辑,但需要创建一个应用程序来管理该配置文件。但是,如果您仅在需要时(启动时和每次更改时)解析文件,那么与缓存系统结合使用,它可以与使用
settings.py
一样高效

您真的想通过网站编辑这些常量吗?我将向无法进入代码和更改变量的客户提供此解决方案。我准备写一个视图。我目前正在数据库中存储(并通过管理员页面进行编辑)。但是为一个单行条目创建一个数据库表似乎并不合适。所以我想要一个不需要改变代码的解决方案。我可以使用文件,但我想它不会比数据库好多少?正如我在最后一段中所说的,是的,你可以制作一个应用程序来管理配置文件,并将其解析为字典或任何你想要的数据结构。它应该只需要大约100行代码和一些单元测试:)有趣的点。我想补充一点,您永远不应该使用*导入。在导入的内容中要明确,因为变量可能会混淆。