/
K_Msk
/
FastAPI_First
Обзор
Документация
Войти
/
K_Msk
/
FastAPI_First
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
10) FAPI+Project/database.py
30 строк
1 KB
Skrppapa
init commit
09 ноя 2025, 18:53
09 ноя 2025, 18:53
9149098
Код
Авторство
О чём код?
from typing import Optional from sqlalchemy.ext.asyncio import create_async_engine, async_sessionmaker from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column engine = create_async_engine( "sqlite+aiosqlite:///task.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)