feat(viewset): 通过 IDS列表获取数据
- 在通用的 ViewSet 中添加 get_by_ids 方法 - 接收 POST 请求,从请求体中获取 ids列表 - 根据 ids 列表查询数据并返回- 若 ids 列表为空或只包含空字符串,则返回空数据
This commit is contained in:
@@ -152,3 +152,13 @@ class CustomModelViewSet(ModelViewSet, ImportSerializerMixin, ExportSerializerMi
|
|||||||
return SuccessResponse(data=[], msg="删除成功")
|
return SuccessResponse(data=[], msg="删除成功")
|
||||||
else:
|
else:
|
||||||
return ErrorResponse(msg="未获取到keys字段")
|
return ErrorResponse(msg="未获取到keys字段")
|
||||||
|
|
||||||
|
@action(methods=['post'], detail=False)
|
||||||
|
def get_by_ids(self, request):
|
||||||
|
"""通过IDS列表获取数据"""
|
||||||
|
ids = request.data.get('ids', [])
|
||||||
|
if ids and ids != ['']:
|
||||||
|
queryset = self.get_queryset().filter(id__in=ids)
|
||||||
|
serializer = self.get_serializer(queryset, many=True)
|
||||||
|
return DetailResponse(data=serializer.data)
|
||||||
|
return DetailResponse(data=None)
|
||||||
|
|||||||
Reference in New Issue
Block a user