This commit is contained in:
Ubuntu 2025-05-14 22:49:55 +08:00
parent e5dae177ef
commit 16cd0d6624
2 changed files with 57 additions and 18 deletions

View File

@ -8,6 +8,13 @@ class CustomPagination(PageNumberPagination):
max_page_size = 100
def get_paginated_response(self, data):
# 为每个结果添加name字段从platforms中提取平台名称
for item in data:
if 'platforms' in item and len(item['platforms']) > 0:
# 添加name字段只使用platform_name
platform = item['platforms'][0]
item['name'] = platform.get('platform_name', '')
return Response({
"code": 200,
"message": "获取数据成功",

View File

@ -118,10 +118,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": account_data.pop("platform_name"),
"account_url": account_data.pop("account_url")
"account_url": account_data.pop("account_url"),
"account_id": account_data.pop("account_id"),
"account_name": account_data.pop("account_name")
}
# 添加platforms字段
account_data["platforms"] = platform_info
# 添加platforms字段作为数组
account_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
account_data["name"] = platform_info["platform_name"]
restructured_data.append(account_data)
# 使用自定义分页器的响应,但替换数据
@ -135,10 +139,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": account_data.pop("platform_name"),
"account_url": account_data.pop("account_url")
"account_url": account_data.pop("account_url"),
"account_id": account_data.pop("account_id"),
"account_name": account_data.pop("account_name")
}
# 添加platforms字段
account_data["platforms"] = platform_info
# 添加platforms字段作为数组
account_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
account_data["name"] = platform_info["platform_name"]
restructured_data.append(account_data)
return Response({
@ -156,10 +164,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": account_data.pop("platform_name"),
"account_url": account_data.pop("account_url")
"account_url": account_data.pop("account_url"),
"account_id": account_data.pop("account_id"),
"account_name": account_data.pop("account_name")
}
# 添加platforms字段
account_data["platforms"] = platform_info
account_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
account_data["name"] = platform_info["platform_name"]
return Response({
"code": 200,
@ -180,10 +192,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": account_data.pop("platform_name"),
"account_url": account_data.pop("account_url")
"account_url": account_data.pop("account_url"),
"account_id": account_data.pop("account_id"),
"account_name": account_data.pop("account_name")
}
# 添加platforms字段
account_data["platforms"] = platform_info
account_data["platforms"] = [platform_info]
# 添加name字段
account_data["name"] = platform_info["platform_name"] + " | " + platform_info["account_name"]
return Response({
"code": 200,
@ -234,11 +250,15 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": account_data.pop("platform_name"),
"account_url": account_data.pop("account_url")
"account_url": account_data.pop("account_url"),
"account_id": account_data.pop("account_id"),
"account_name": account_data.pop("account_name")
}
# 添加platforms字段
account_data["platforms"] = platform_info
account_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
account_data["name"] = platform_info["platform_name"]
restructured_data.append(account_data)
return Response({
@ -294,10 +314,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": account_data.pop("platform_name"),
"account_url": account_data.pop("account_url")
"account_url": account_data.pop("account_url"),
"account_id": account_data.pop("account_id"),
"account_name": account_data.pop("account_name")
}
# 添加platforms字段
account_data["platforms"] = platform_info
account_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
account_data["name"] = platform_info["platform_name"]
return Response({
"code": 200,
@ -338,10 +362,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": platform_data.pop("platform_name"),
"account_url": platform_data.pop("account_url")
"account_url": platform_data.pop("account_url"),
"account_id": platform_data.pop("account_id"),
"account_name": platform_data.pop("account_name")
}
# 添加platforms字段
platform_data["platforms"] = platform_info
platform_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
platform_data["name"] = platform_info["platform_name"]
return Response({
"code": 200,
@ -401,10 +429,14 @@ class PlatformAccountViewSet(viewsets.ModelViewSet):
# 提取平台信息并放入platforms字段
platform_info = {
"platform_name": platform_data.pop("platform_name"),
"account_url": platform_data.pop("account_url")
"account_url": platform_data.pop("account_url"),
"account_id": platform_data.pop("account_id"),
"account_name": platform_data.pop("account_name")
}
# 添加platforms字段
platform_data["platforms"] = platform_info
platform_data["platforms"] = [platform_info]
# 添加name字段只用platform_name
platform_data["name"] = platform_info["platform_name"]
return Response({
"code": 200,