为什么get环境返回一个{}包装的字符串?

2024-04-29 02:56:08 发布

您现在位置:Python中文网/ 问答频道 /正文

请问我的FastAPi设置有什么错误?我不得不包装我的os.environ.get(),因为环境变量返回时带有“{}”-例如{postgres://....}'. 我在本地将它部署到docker,当我在容器的CLI中回显它们时,环境变量返回时没有任何{}包装

我的main.py如下所示,它现在可以工作了,但我认为这并不正常:

import re
from fastapi import FastAPI, Depends
from tortoise.contrib.fastapi import register_tortoise
from app.config import get_settings, Settings

app = FastAPI()

register_tortoise(
    app,
    db_url=re.findall(r'\{(.*?)\}',os.environ.get("DATABASE_URL"))[0],
    modules={"models": ["app.models.tortoise"]},
    generate_schemas=True,
    add_exception_handlers=True,
)

Tags: fromimportreregistertrueappgetos