From 7e3c91296227c7dc17619d3f73cdb2262e497bcc Mon Sep 17 00:00:00 2001 From: Artem Litvinov Date: Fri, 29 Sep 2023 15:38:11 +0100 Subject: [PATCH] feat: alembic settings --- src/fastapi_app/alembic/env.py | 14 ++++---------- src/fastapi_app/lib/models/__init__.py | 3 +++ src/fastapi_app/lib/models/base_sqlalchemy.py | 3 +++ 3 files changed, 10 insertions(+), 10 deletions(-) create mode 100644 src/fastapi_app/lib/models/__init__.py create mode 100644 src/fastapi_app/lib/models/base_sqlalchemy.py diff --git a/src/fastapi_app/alembic/env.py b/src/fastapi_app/alembic/env.py index 9f2d519..9e2caf7 100644 --- a/src/fastapi_app/alembic/env.py +++ b/src/fastapi_app/alembic/env.py @@ -5,6 +5,8 @@ from sqlalchemy import pool from sqlalchemy.engine import Connection from sqlalchemy.ext.asyncio import async_engine_from_config +import lib.app.settings as app_settings +import lib.models as models from alembic import context # this is the Alembic Config object, which provides @@ -12,20 +14,12 @@ from alembic import context config = context.config # Interpret the config file for Python logging. -# This line sets up loggers basically. if config.config_file_name is not None: fileConfig(config.config_file_name) -# add your model's MetaData object here -# for 'autogenerate' support -# from myapp import mymodel -# target_metadata = mymodel.Base.metadata -target_metadata = None +config.set_main_option("sqlalchemy.url", app_settings.settings.postgres.dsn) -# other values from the config, defined by the needs of env.py, -# can be acquired: -# my_important_option = config.get_main_option("my_important_option") -# ... etc. +target_metadata = models.Base.metadata def run_migrations_offline() -> None: diff --git a/src/fastapi_app/lib/models/__init__.py b/src/fastapi_app/lib/models/__init__.py new file mode 100644 index 0000000..130e2e2 --- /dev/null +++ b/src/fastapi_app/lib/models/__init__.py @@ -0,0 +1,3 @@ +from .base_sqlalchemy import Base + +__all__ = ["Base"] diff --git a/src/fastapi_app/lib/models/base_sqlalchemy.py b/src/fastapi_app/lib/models/base_sqlalchemy.py new file mode 100644 index 0000000..e3af184 --- /dev/null +++ b/src/fastapi_app/lib/models/base_sqlalchemy.py @@ -0,0 +1,3 @@ +import sqlalchemy.ext.declarative + +Base = sqlalchemy.ext.declarative.declarative_base()