get spaces

This commit is contained in:
mi1468 2025-05-27 12:20:55 +03:30
parent 0d4c208ecd
commit ee7fcf8376
2 changed files with 9 additions and 3 deletions

View File

@ -2,7 +2,12 @@
from rest_framework import serializers from rest_framework import serializers
from core.models.Space import Space from core.models.Space import Space
from core.serializers.AssetBundleRoomSerializer import AssetBundleRoomSerializer
class SpaceSerializer(serializers.ModelSerializer): class SpaceSerializer(serializers.ModelSerializer):
assetBundleRoomId = AssetBundleRoomSerializer() # Nested serializer for AssetBundleRoom
class Meta: class Meta:
model = Space model = Space
fields = ['userId', 'assetBundleRoomId', 'name', 'description', 'capacity'] fields = ['userId', 'assetBundleRoomId', 'name', 'description', 'capacity']

View File

@ -13,14 +13,15 @@ from core.serializers.SpaceSerializer import SpaceSerializer
@api_view(['GET']) @api_view(['GET'])
@authentication_classes([SessionAuthentication, TokenAuthentication]) @authentication_classes([SessionAuthentication, TokenAuthentication])
@permission_classes([IsAuthenticated]) @permission_classes([IsAuthenticated])
def getSpaces(request): def getSpaces(request):
# Get the spaces associated with the authenticated user # Get the spaces associated with the authenticated user and join with AssetBundleRoom data
spaces = Space.objects.filter(userId=request.user) # Filter spaces by the authenticated user spaces = Space.objects.filter(userId=request.user).select_related('assetBundleRoomId')
# Serialize the spaces # Serialize the spaces and include all fields from the related AssetBundleRoom
serializer = SpaceSerializer(spaces, many=True) serializer = SpaceSerializer(spaces, many=True)
# Return the serialized data as a response # Return the serialized data as a response