炎炎設(shè)計(jì)
2022-08-11 18:13:22
我面臨以下問題。我的 .env 文件包含如下行:export SERVERNAMES="localhost domain1 domain2 domain3" <- exactly this kind of format但是調(diào)用的變量在我的部署的多個(gè)位置被多次使用,所以我不能將其聲明為 settings.py 可以立即使用的字符串的兼容列表。旁邊,我不喜歡為基本上相同的東西設(shè)置.env的多個(gè)變量。所以我的問題是,如何格式化我的格式,使其與我的 settings.py 兼容。像這樣的東西似乎不起作用:SERVERNAMESALLOWED_HOSTSALLOWED_HOSTS = os.environ.get('SERVERNAMES').split(',')感謝和親切的問候
3 回答

慕仙森
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
只需使用空格作為分隔符而不是逗號來拆分變量SERVERNAMES
ALLOWED_HOSTS = os.environ.get('SERVERNAMES').split(' ')

收到一只叮咚
TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
昏迷使它成為一根弦
env = "localhost domain1 domain2 domain3"
envs = envs.split(',')
print(envs)
['localhost domain1 domain2 domain3']
相反,只需用空格拆分字符串,python就會(huì)將其轉(zhuǎn)換為字符串列表。
env = "localhost domain1 domain2 domain3"
envs = env.split() # By default `str.split()` splits upon spaces
print(envs)
['localhost', 'domain1', 'domain2', 'domain3']

神不在的星期二
TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊
您還可以使用 env.list 命令。
把你的 .env 文件放進(jìn)去:
ALLOWED_HOSTS=example.com,awesomedomain.com,stagingdomain.com
在python中使用
ALLOWED_HOSTS = env.list("ALLOWED_HOSTS")
添加回答
舉報(bào)
0/150
提交
取消