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().