gpt4 book ai didi

python - Django:检查是否设置了设置变量

转载 作者:IT老高 更新时间:2023-10-28 21:51:19 24 4
gpt4 key购买 nike

这是我想要实现的一个示例。期望的效果是,当且仅当定义了其相关设置存在时,特定功能才应该生效。否则,该功能应该被禁用。

settings.py:

SOME_VARIABLE = 'some-string'
ANOTHER_VARIABLE = 'another-string'

random_code_file.py:

from django.conf import settings

if settings.is_defined('ANOTHER_VARIABLE'): # <- I need this.
do_something(settings.ANOTHER_VARIABLE)
else:
do_something_completely_different()

在上面的代码中,我错过了我应该做的任何事情,而不是 settings.is_defined

如果这完全是解决问题的错误方法,我也很乐意听到其他方法。所需的效果是自动激活的功能,只有在相关设置存在时才会生效。我宁愿避免一些特殊的 settings.ACTIVE_FEATURES 设置或特殊值,例如空白字符串或 None 来评估它是否生效。

我最不想做的就是使用 try/except。我宁愿选择一个空值来表示该功能的排除。 - 但是如果尝试/排除它确实是首选方法,如果提供了详尽的来源或解释,我会将答案标记为正确。事实上,这适用于任何答案。

简而言之,我需要正确的方法来检查 Django 中是否定义了设置变量。

提前致谢!

最佳答案

看来你的方法是正确的:导入设置对象并检查。

你可以尝试使用:

if hasattr(settings, 'ANOTHER_VARIABLE'):

代替:

if settings.is_defined('ANOTHER_VARIABLE'):

我找到了 the documentation ,希望这可能会有所帮助。

关于python - Django:检查是否设置了设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24923505/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com