File tree 2 files changed +9
-10
lines changed
2 files changed +9
-10
lines changed Original file line number Diff line number Diff line change @@ -139,6 +139,7 @@ venv.bak/
139
139
140
140
# Rope project settings
141
141
.ropeproject
142
+ .vscode
142
143
143
144
# mkdocs documentation
144
145
/site
Original file line number Diff line number Diff line change 6
6
7
7
"""
8
8
9
+ from typing import AsyncGenerator
9
10
from sqlalchemy .ext .asyncio import create_async_engine ,\
10
- AsyncSession
11
+ AsyncSession , async_sessionmaker , AsyncAttrs
11
12
from sqlalchemy .orm import DeclarativeBase ,\
12
- configure_mappers , sessionmaker
13
+ configure_mappers
13
14
14
15
15
16
from .settings import settings
24
25
configure_mappers ()
25
26
26
27
# Get an async session from the engine
28
+ AsyncSessionFactory = async_sessionmaker (engine , class_ = AsyncSession , expire_on_commit = False )
27
29
28
30
29
- async def get_async_session () -> AsyncSession :
30
- async_session = sessionmaker (
31
- engine , class_ = AsyncSession , expire_on_commit = False
32
- )
33
- async with async_session () as session :
31
+ async def get_async_session () -> AsyncGenerator [AsyncSession , None ]:
32
+ async with AsyncSessionFactory () as session :
34
33
yield session
35
34
36
- # Used by the ORM layer to describe models
37
-
38
35
39
- class Base (DeclarativeBase ):
36
+ # Used by the ORM layer to describe models
37
+ class Base (DeclarativeBase , AsyncAttrs ):
40
38
"""
41
39
SQLAlchemy 2.0 style declarative base class
42
40
https://bit.ly/3WE3Srg
You can’t perform that action at this time.
0 commit comments