11from fastapi import Depends , status
22from sqlalchemy .ext .asyncio import AsyncSession
33
4- from examples .api_for_sqlalchemy .api .base import DetailViewBaseGeneric , ListViewBaseGeneric
54from examples .api_for_sqlalchemy .extensions .sqlalchemy import Connector
6- from examples .api_for_sqlalchemy .helpers .factories .meta_base import FactoryUseMode
75from examples .api_for_sqlalchemy .helpers .factories .user import ErrorCreateUserObject , UserFactory
8- from examples .api_for_sqlalchemy .helpers .updaters .exceptions import ObjectNotFound
96from examples .api_for_sqlalchemy .helpers .updaters .update_user import ErrorUpdateUserObject , UpdateUser
107from examples .api_for_sqlalchemy .models import User
118from examples .api_for_sqlalchemy .models .schemas import UserPatchSchema , UserSchema
1512 BadRequest ,
1613 HTTPException ,
1714)
15+ from fastapi_jsonapi .misc .sqla .factories .meta_base import FactoryUseMode
16+ from fastapi_jsonapi .misc .sqla .generics .base import DetailViewBaseGeneric , ListViewBaseGeneric
17+ from fastapi_jsonapi .misc .sqla .updaters .exceptions import ObjectNotFound
1818from fastapi_jsonapi .querystring import QueryStringManager
1919from fastapi_jsonapi .schema import JSONAPIResultDetailSchema
2020
2121
2222class UserDetail (DetailViewBaseGeneric ):
23+ session_dependency = Depends (Connector .get_session )
24+
2325 @classmethod
2426 async def patch (
2527 cls ,
2628 obj_id ,
2729 data : UserPatchSchema ,
2830 query_params : QueryStringManager ,
29- session : AsyncSession = Depends ( Connector . get_session ) ,
31+ session : AsyncSession = session_dependency ,
3032 ) -> UserSchema :
3133 user_obj : User
3234 try :
@@ -46,11 +48,13 @@ async def patch(
4648
4749
4850class UserList (ListViewBaseGeneric ):
51+ session_dependency = Depends (Connector .get_session )
52+
4953 async def post (
5054 self ,
5155 data : UserInSchema ,
5256 query_params : QueryStringManager ,
53- session : AsyncSession = Depends ( Connector . get_session ) ,
57+ session : AsyncSession = session_dependency ,
5458 ) -> JSONAPIResultDetailSchema :
5559 user_obj : User = await UserFactory .create_object_generic (
5660 data_as_schema = data ,
0 commit comments