Django Rest Framework, создание модели, (сериализатор и представление) с полем oneToMany для пользователей

Я пытаюсь создать довольно простую модель, все, что хранит модель - это номер недели (как первичный ключ), и поле oneToMany со списком пользователей. Идея заключается в том, что она должна функционировать как схема, где вы можете видеть, какие пользователи привязаны к определенному номеру недели. Моя проблема в том, чтобы заставить сериализатор работать с полем oneToMany.

Модель:

class Schema(models.Model):
    week = models.PositiveIntegerField(primary_key=True, 
                                       unique=True,
                                       validators=[MinValueValidator(1), MaxValueValidator(53)],
                                       )
    users = models.ForeignKey(MyUser, null=True, on_delete=models.SET_NULL)

    class Meta:
        ordering = ('week',)

Serializer:

class SchemaSerializer(serializers.Serializer):
    class Meta:
        model = Schema
        fields = ('week', 'users')

    def create(self, validated_data):
        answer, created = Schema.objects.update_or_create(
            week=validated_data.get('week', 1),
            defaults={'users', validated_data.get('users', None)}
        )
        return answer

Вид:

class SchemaView(APIView):
    permission_classes = (IsAuthenticated, IsAdminUser)

    def get(self, request):
        schemas = Schema.objects.all()
        serializer = SchemaSerializer(schemas)

        return Response(serializer.data)

    def post(self, request):
        data = request.data
        serializer = SchemaSerializer(data=data)
        serializer.is_valid()
        serializer.save()
        return Response(serializer.data, status=status.HTTP_200_OK)

Я получаю следующую ошибку TypeError: cannot convert dictionary update sequence element #0 to a sequence. Как я интерпретирую эту ошибку, что-то не так с первым элементом (номер недели) при попытке выполнить serializer.save().

Вернуться на верх