mirror of https://github.com/jumpserver/jumpserver
[Fix] spm (#4082)
parent
a43d6ad34d
commit
34c556d375
|
@ -86,12 +86,13 @@ class LogTailApi(generics.RetrieveAPIView):
|
||||||
|
|
||||||
|
|
||||||
class ResourcesIDCacheApi(APIView):
|
class ResourcesIDCacheApi(APIView):
|
||||||
|
|
||||||
def post(self, request, *args, **kwargs):
|
def post(self, request, *args, **kwargs):
|
||||||
spm = str(uuid.uuid4())
|
spm = str(uuid.uuid4())
|
||||||
resources_id = request.data.get('resources')
|
resources = request.data.get('resources')
|
||||||
if resources_id:
|
if resources is not None:
|
||||||
cache_key = KEY_CACHE_RESOURCES_ID.format(spm)
|
cache_key = KEY_CACHE_RESOURCES_ID.format(spm)
|
||||||
cache.set(cache_key, resources_id, 300)
|
cache.set(cache_key, resources, 300)
|
||||||
return Response({'spm': spm})
|
return Response({'spm': spm})
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -96,7 +96,7 @@ class IDSpmFilter(filters.BaseFilterBackend):
|
||||||
return queryset
|
return queryset
|
||||||
cache_key = const.KEY_CACHE_RESOURCES_ID.format(spm)
|
cache_key = const.KEY_CACHE_RESOURCES_ID.format(spm)
|
||||||
resources_id = cache.get(cache_key)
|
resources_id = cache.get(cache_key)
|
||||||
if not resources_id or not isinstance(resources_id, list):
|
if resources_id is None or not isinstance(resources_id, list):
|
||||||
return queryset
|
return queryset
|
||||||
queryset = queryset.filter(id__in=resources_id)
|
queryset = queryset.filter(id__in=resources_id)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
Loading…
Reference in New Issue