diff --git a/webapp/serializers.py b/webapp/serializers.py index 2250a8d..353b6c9 100644 --- a/webapp/serializers.py +++ b/webapp/serializers.py @@ -1,5 +1,6 @@ from rest_framework import serializers from webapp.models import * +import json class SignupFormSerializer(serializers.HyperlinkedModelSerializer): @@ -7,6 +8,14 @@ class SignupFormSerializer(serializers.HyperlinkedModelSerializer): model = SignupForm fields = ('id', 'title', 'start_time', 'end_time', 'questions') + def create(self, validated_data): + validated_data["questions"] = json.loads(validated_data["questions"]) + return super().create(validated_data) + + def update(self, instance, validated_data): + validated_data["questions"] = json.loads(validated_data["questions"]) + return super().update(instance, validated_data) + class EventSerializer(serializers.HyperlinkedModelSerializer): signupForm = SignupFormSerializer(many=True, read_only=True, required=False) @@ -64,6 +73,14 @@ class SignupSerializer(serializers.ModelSerializer): } } + def create(self, validated_data): + validated_data["answer"] = json.loads(validated_data["answer"]) + return super().create(validated_data) + + def update(self, instance, validated_data): + validated_data["answer"] = json.loads(validated_data["answer"]) + return super().update(instance, validated_data) + class SavedQuestionsSerializer(serializers.ModelSerializer): class Meta: