Skip to content

Ideas: Configurations

Bedram Tamang edited this page May 16, 2026 · 1 revision
from config.cache import env
from fastapi_startkit.masoniteorm import PostgresConfig, SQLiteConfig as BaseSQLiteConfig

class DatabaseConfig:
    default = env("DB_CONNECTION", "pgsql")

    migrations = {"table": "migrations", "path": "databases/migrations"}

    connections = {
        "pgsql": PostgresConfig(
            driver="postgres",
            host=env("DB_HOST", "127.0.0.1"),
            database=env("DB_DATABASE", "picaresume"),
            username=env("DB_USERNAME", "picaresume"),
            password=env("DB_PASSWORD", "password"),
            port=env("DB_PORT", "5432"),
            options=None,
        ),
        "sqlite": SqliteConfig(
            driver="sqlite",
            database=env("DB_DATABASE", "database.sqlite"),
            options=None
        ),
    }

I should be able to do

  1. DatabaseConfig.connections # return json & caches
  2. DatabaseConfig.get('connections.sqlite.driver') # return sqlite
  3. DatabaseConfig.clear() # clear all cache
  4. DatabaseConfig.json() # return json
  5. automatic casts.

Clone this wiki locally