/
Levitan_run
/
fastapi_course
Обзор
Документация
Войти
/
Levitan_run
/
fastapi_course
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
database.py
29 строк
791 B
Levitan_run
Initial commit
19 июл 2026, 19:29
19 июл 2026, 19:29
9abf28a
Код
Авторство
О чём код?
from typing import Optional from sqlalchemy.ext.asyncio import create_async_engine, async_sessionmaker from sqlalchemy.orm import DeclarativeBase, Mapped from sqlalchemy.testing.schema import mapped_column engine = create_async_engine( "sqlite+aiosqlite:///tasks.db" ) new_session = async_sessionmaker(engine, expire_on_commit=False) class Model(DeclarativeBase): pass class TaskOrm(Model): __tablename__ = "tasks" id: Mapped[int] = mapped_column(primary_key = True) name: Mapped[str] description: Mapped[Optional[str]] async def create_tables(): async with engine.begin() as conn: await conn.run_sync(Model.metadata.create_all) async def delete_tables(): async with engine.begin() as conn: await conn.run_sync(Model.metadata.drop_all)