feat: 100% async - native async serializers (adata/asave/acreate), async cache (redis.asyncio), view call-site migration
This commit is contained in:
+4
-4
@@ -71,10 +71,10 @@ class BrowsingHistoryListCreateView(generics.ListCreateAPIView):
|
||||
page = await sync_to_async(self.paginate_queryset)(queryset)
|
||||
if page is not None:
|
||||
serializer = self.get_serializer(page, many=True)
|
||||
return self.get_paginated_response(serializer.data)
|
||||
return self.get_paginated_response(await serializer.adata)
|
||||
results = [x async for x in queryset]
|
||||
serializer = self.get_serializer(results, many=True)
|
||||
return Response({'code': 10000, 'message': 'Success', 'data': serializer.data})
|
||||
return Response({'code': 10000, 'message': 'Success', 'data': await serializer.adata})
|
||||
|
||||
@swagger_auto_schema(
|
||||
tags=['历史'],
|
||||
@@ -85,10 +85,10 @@ class BrowsingHistoryListCreateView(generics.ListCreateAPIView):
|
||||
)
|
||||
async def create(self, request, *args, **kwargs):
|
||||
serializer = self.get_serializer(data=request.data)
|
||||
is_valid = await sync_to_async(serializer.is_valid)()
|
||||
is_valid = serializer.is_valid()
|
||||
if is_valid:
|
||||
# 兜底:serializer.create 内部有同步 ORM(filter/first/save/create)
|
||||
instance = await sync_to_async(serializer.save)()
|
||||
instance = await serializer.asave()
|
||||
return create_standardized_response(
|
||||
data=BrowsingHistorySerializer(instance).data,
|
||||
code=ResponseCode.SUCCESS,
|
||||
|
||||
Reference in New Issue
Block a user