fix organization pagination - quota distribution
This commit is contained in:
@@ -12,6 +12,7 @@ class CustomOperations:
|
||||
request: object = None,
|
||||
view: object = None,
|
||||
data_key: str = None,
|
||||
data: dict = None,
|
||||
additional_data: dict = None
|
||||
) -> typing.Any:
|
||||
"""
|
||||
@@ -25,9 +26,16 @@ class CustomOperations:
|
||||
view_data[data_key].update({'user': user.id}) # noqa
|
||||
if additional_data:
|
||||
view_data[data_key].update(additional_data)
|
||||
serializer = view.serializer_class(data=view_data[data_key]) # noqa
|
||||
serializer.is_valid(raise_exception=True)
|
||||
|
||||
# if we have data_key for dictionary data get value
|
||||
# if not, just put additional data in serializer
|
||||
if data_key:
|
||||
serializer = view.serializer_class(data=view_data[data_key]) # noqa
|
||||
if data:
|
||||
serializer = view.serializer_class(data=data) # noqa
|
||||
serializer.is_valid(raise_exception=True) # noqa
|
||||
view.perform_create(serializer) # noqa
|
||||
|
||||
headers = view.get_success_headers(serializer.data) # noqa
|
||||
return serializer.data
|
||||
|
||||
@@ -38,6 +46,7 @@ class CustomOperations:
|
||||
obj_id: object = None,
|
||||
view: object = None,
|
||||
data_key: str = None,
|
||||
data: dict = None,
|
||||
additional_data: dict = None
|
||||
) -> typing.Any:
|
||||
view_data = request.data # included needed data for view set # noqa
|
||||
@@ -45,8 +54,11 @@ class CustomOperations:
|
||||
view_data[data_key].update({'user': user.id}) # noqa
|
||||
if additional_data:
|
||||
view_data[data_key].update(additional_data)
|
||||
serializer = view.serializer_class(data=view_data[data_key]) # noqa
|
||||
serializer.is_valid(raise_exception=True)
|
||||
if data_key:
|
||||
serializer = view.serializer_class(data=view_data[data_key]) # noqa
|
||||
if data:
|
||||
serializer = view.serializer_class(data=data) # noqa
|
||||
serializer.is_valid(raise_exception=True) # noqa
|
||||
serializer.update(view.queryset.get(id=obj_id), view_data[data_key]) # noqa
|
||||
# view.perform_update(serializer) # noqa
|
||||
headers = view.get_success_headers(serializer.data) # noqa
|
||||
|
||||
Reference in New Issue
Block a user