Files
WerkoutAPI/superset/serializers.py
2024-06-23 22:51:58 -05:00

33 lines
991 B
Python

from rest_framework import serializers
from .models import *
from exercise.models import Exercise
from exercise.serializers import ExerciseSerializer
import uuid
class SupersetExerciseSerializer(serializers.ModelSerializer):
exercise = serializers.SerializerMethodField()
unique_id = serializers.SerializerMethodField()
class Meta:
model = SupersetExercise
fields = '__all__'
def get_exercise(self, obj):
data = ExerciseSerializer(obj.exercise, many=False).data
return data
def get_unique_id(self, obj):
return str(uuid.uuid4())
class SupersetSerializer(serializers.ModelSerializer):
exercises = serializers.SerializerMethodField()
class Meta:
model = Superset
fields = '__all__'
def get_exercises(self, obj):
objs = SupersetExercise.objects.filter(superset=obj).order_by('order')
data = SupersetExerciseSerializer(objs, many=True).data
return data