Configurações
Agora que temos pelo menos uma tabela mapeada para uma classe precisamos estabelecer conexão com o banco de dados e para isso precisamos carregar configurações
Verifique o arquivo dundie/default.toml
[default]
[default.db]
uri = ""
connect_args = {check_same_thread=false}
echo = false
Lembra que no docker-compose.yaml passamos as variáveis DUNDIE_DB...
aquelas variáveis vão sobrescrever os valores definidos no default.toml, por exemplo, DUNDIE_DB__uri=... irá preencher o valor uri na seção [default.db] do arquivo default.toml
Para carregar as configurações vamos usar o plugin dynaconf que já está instalado e só precisamos carregar criando uma instancia de settings que será o objeto usado durante toda a aplicação para acessar as configurações:
Veja em dundie/config.py como estamos inicializando o plugin de configurações.
"""Settings module"""
import os
from dynaconf import Dynaconf
HERE = os.path.dirname(os.path.abspath(__file__))
settings = Dynaconf(
envvar_prefix="dundie",
preload=[os.path.join(HERE, "default.toml")],
settings_files=["settings.toml", ".secrets.toml"],
environments=["development", "production", "testing"],
env_switcher="dundie_env",
load_dotenv=False,
)
No arquivo acima estamos definindo que o objeto settings irá
carregar variáveis do arquivo default.toml e em seguida dos arquivos
settings.toml e .secrets.toml e que será possivel usar DUNDIE_ como
prefixo nas variáveis de ambiente para sobrescrever os valores.
Agora já podemos acessar esses valores e criar a conexão com o banco de dados -->