SQLAlchemy1.4로 비동기 연결용 세션 만들기
필요한 모듈 가져오기
from sqlalchemy.orm import sessionmaker # 同期接続の時の同じようにsessionmakerをインポート
from sqlalchemy.ext.asyncio import AsyncSession, create_async_engine
create_engine 대신async_engine 가져오기.비동기식 연결에 사용할 클래스, AsyncSession을 가져옵니다.
세션 만들기
// asyncpgなりpsycopg2なり
async_db = f"postgresql+asyncpg://{USER}:{PASSWORD}@{HOST}:{PORT}/{DB_NAME}"
async_engine = create_async_engine(async_db)
async_session = sessionmaker(
bind=async_engine,
class_=AsyncSession,
autocommit=False,
autoflush=False,
)
sessionmaker의 구조기를 보면 기본class이orm.session.Session이 지정되었으므로 AsyncSession을 사용합니다.그리고
async with async_session() as session:
context 관리자에게서session을 받아서 사용합니다.단지 참고로 제공하다
예외일 때의 후처리를 asynccontext 관리자로 쓸 수도 있습니다.
Reference
이 문제에 관하여(SQLAlchemy1.4로 비동기 연결용 세션 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/senbei139/articles/f0d7323e951a37텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)