11import logging
2- from typing import TYPE_CHECKING
2+ from typing import TYPE_CHECKING , Any , Dict
33
44from fastapi_jsonapi .schema import (
55 BaseJSONAPIDataInSchema ,
@@ -28,8 +28,14 @@ def _calculate_total_pages(self, db_items_count: int) -> int:
2828
2929 return total_pages
3030
31+ async def get_data_layer (
32+ self ,
33+ extra_view_deps : Dict [str , Any ],
34+ ) -> "BaseDataLayer" :
35+ return await self .get_data_layer_for_list (extra_view_deps )
36+
3137 async def handle_get_resource_list (self , ** extra_view_deps ) -> JSONAPIResultListSchema :
32- dl : "BaseDataLayer" = await self .get_data_layer_for_list (extra_view_deps )
38+ dl : "BaseDataLayer" = await self .get_data_layer (extra_view_deps )
3339 query_params = self .query_params
3440 count , items_from_db = await dl .get_collection (qs = query_params )
3541 total_pages = self ._calculate_total_pages (count )
@@ -41,7 +47,7 @@ async def handle_post_resource_list(
4147 data_create : BaseJSONAPIDataInSchema ,
4248 ** extra_view_deps ,
4349 ) -> JSONAPIResultDetailSchema :
44- dl : "BaseDataLayer" = await self .get_data_layer_for_list (extra_view_deps )
50+ dl : "BaseDataLayer" = await self .get_data_layer (extra_view_deps )
4551 created_object = await dl .create_object (data_create = data_create .data , view_kwargs = {})
4652 created_object_id = dl .get_object_id (created_object )
4753
@@ -51,7 +57,7 @@ async def handle_post_resource_list(
5157 return self ._build_detail_response (db_object )
5258
5359 async def handle_delete_resource_list (self , ** extra_view_deps ) -> JSONAPIResultListSchema :
54- dl : "BaseDataLayer" = await self .get_data_layer_for_list (extra_view_deps )
60+ dl : "BaseDataLayer" = await self .get_data_layer (extra_view_deps )
5561 query_params = self .query_params
5662 count , items_from_db = await dl .get_collection (qs = query_params )
5763 total_pages = self ._calculate_total_pages (count )
0 commit comments