Skip to content

Commit e233b5a

Browse files
committed
add dl helper to get object id
1 parent d688551 commit e233b5a

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

fastapi_jsonapi/data_layers/base.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,9 @@ def get_object_id_field(self):
9090
# TODO: any custom exception type?
9191
raise Exception(msg)
9292

93+
def get_object_id(self, obj: TypeModel):
94+
return getattr(obj, self.get_object_id_field_name())
95+
9396
async def get_object(self, view_kwargs: dict, qs: Optional[QueryStringManager] = None) -> TypeModel:
9497
"""
9598
Retrieve an object

fastapi_jsonapi/views/list_view.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ async def handle_post_resource_list(
4343
) -> JSONAPIResultDetailSchema:
4444
dl: "BaseDataLayer" = await self.get_data_layer_for_list(extra_view_deps)
4545
created_object = await dl.create_object(data_create=data_create.data, view_kwargs={})
46-
created_object_id = getattr(created_object, dl.get_object_id_field_name())
46+
created_object_id = dl.get_object_id(created_object)
4747

4848
view_kwargs = {dl.url_id_field: created_object_id}
4949
db_object = await dl.get_object(view_kwargs=view_kwargs, qs=self.query_params)

0 commit comments

Comments
 (0)