feat: 100% async - native async serializers (adata/asave/acreate), async cache (redis.asyncio), view call-site migration
This commit is contained in:
@@ -24,7 +24,7 @@ class ToolCategoryListView(APIView):
|
||||
serializer = ToolCategorySerializer(categories, many=True)
|
||||
return JsonResponse({
|
||||
'success': True,
|
||||
'data': serializer.data
|
||||
'data': await serializer.adata
|
||||
})
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@ class ToolListView(APIView):
|
||||
|
||||
tool_list = [t async for t in tools]
|
||||
serializer = ToolSerializer(tool_list, many=True)
|
||||
data = serializer.data
|
||||
data = await serializer.adata
|
||||
|
||||
# 构建 favorites_count 映射
|
||||
favorites_count_map = {
|
||||
@@ -111,7 +111,7 @@ class ToolDetailView(APIView):
|
||||
try:
|
||||
tool = await Tool.objects.select_related('category').aget(pk=pk, is_enabled=True)
|
||||
serializer = ToolSerializer(tool)
|
||||
data = serializer.data
|
||||
data = await serializer.adata
|
||||
if request.user.is_authenticated:
|
||||
data['is_favorited'] = await ToolFavorite.objects.filter(
|
||||
user=request.user, tool=tool
|
||||
|
||||
Reference in New Issue
Block a user