18 lines
562 B
Python
18 lines
562 B
Python
from dataclasses import dataclass
|
|
import os
|
|
|
|
|
|
@dataclass
|
|
class Settings:
|
|
dialect: str = os.getenv("DIALECT", "postgresql")
|
|
driver: str = os.getenv("DRIVER", "psycopg2")
|
|
user: str = os.getenv("USER", "user")
|
|
password: str = os.getenv("PASSWORD", "password")
|
|
db_name: str = os.getenv("DB_NAME", "db")
|
|
host: str = os.getenv("HOST", "postgres")
|
|
port: int = os.getenv("PORT", 5432)
|
|
|
|
@property
|
|
def uri(self) -> str:
|
|
return f"{self.dialect}+{self.driver}://{self.user}:{self.password}@{self.host}:{self.port}/{self.db_name}"
|