0

settings.py の GLOBAL VARIABLES で設定できるようにしたい、再利用可能な django アプリに取り組んでいます。

これらをオプションにしたいので、アプリ内の conf.py モジュールでデフォルト値を提供しました。ここには次のものがあります。

GLOBAL_1 = "Def value for global 1"
GLOBAL_2 = "Def value for global 2"
GLOBAL_3 = "Def value for global 3"

try:
    from settings import GLOBAL_1
except:
    pass

try:
    from settings import GLOBAL_2
except:
    pass

...

そのため、デフォルトが存在する場合は、settings.py の構成によって上書きされる可能性があります。この方法はあまりにも多くの変数に対応できないため、これを行うためのより冗長な方法があるかどうか疑問に思っていました. 多分私はeval()を使うべきですか?

どうもありがとう!

4

1 に答える 1

1
GLOBAL_1 = getattr(settings, 'GLOBAL_1', 'Def value for global 1')
于 2011-11-12T18:51:53.563 に答える