from rest_framework import serializers from rest_framework.serializers import ModelSerializer from vbv_lernwelt.simpletodo.models import SimpleTask, SimpleList class SimpleTaskSerializer(ModelSerializer): list_title = serializers.CharField(max_length=100) class Meta: model = SimpleTask fields = [ "id", "title", "text", "done", "deadline", "list_title", ] def create(self, validated_data): user = validated_data.pop("user", None) if user is None: raise serializers.ValidationError("User is required") list_title = validated_data.pop("list_title") simple_list, _ = SimpleList.objects.get_or_create(title=list_title, user=user) validated_data["list"] = simple_list return super().create(validated_data)