Ошибки сериализатора Django ('Неверные данные. Ожидался словарь, а получен {datatype}.').

Я пытаюсь создавать задания (задание может быть создано пользователем). - API работает нормально когда я посылаю запрос от DjangoRest Framework API, задание создается успешно. - Но в реальной форме (Frontend form) когда я пытаюсь разместить задание, выдается следующая ошибка. -Пожалуйста, помогите! Ошибка, которая генерируется

models.py

def upload_to(instance, filename):
    return 'assignments/{filename}'.format(filename=filename)

class Assignment(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='assignments', 
    blank=True, null=True)
    username = models.CharField(max_length=255, blank=True, null=True)
    title = models.CharField(max_length=20, blank=False, null=False)
    subject = models.CharField(max_length=20, choices=subject_choices, default=Statistics, 
     blank=False)
    assignment_type = models.CharField(max_length=20, choices=assignment_choices, 
     default=Assignment, blank=False)
    assignment_file = models.ImageField(_("Image"),upload_to=upload_to,default="", blank=False)
    description = models.CharField(max_length=50, blank=False)
    created_at = models.DateTimeField(auto_now_add=True)
    

serializers.py

class AssignmentSerializer(serializers.ModelSerializer):
    class Meta:
        model = Assignment
        fields = ('user','username','title', 'subject', 'assignment_type', 'assignment_file', 
        'description')

views.py

class CreateAssignmentView(APIView):
    parser_classes = [MultiPartParser, FormParser]
    serializer_class = AssignmentSerializer
    def post(self, request, format=None):
        assignment = request.data
        print(assignment)
        serializer = self.serializer_class(data = assignment)
        if serializer.is_valid():
            print("valid")
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        
        return Response({'Bad Request': 'Invalid data...'}, status=status.HTTP_400_BAD_REQUEST)
    

REACT Функция для создания назначений

    const createAssignment = (e) => {
    e.preventDefault();
    let formData = new FormData();
    console.log()
    const data = {
      user : user.user_id,
      username : user.full_name,
      title : assignmentTitle,
      subject : assignmentSubject,
      assignment_type : assignmentType,
      assignment_file : assignmentFile[0].name + " " + "(" + assignmentFile[0].type + ")",
      description : assignmentdescription,
    }
    formData.append("data", JSON.stringify(data));
    console.log(formData.get("data"));
    const requestOptions = {
      mode: 'no-cors',
      method: "POST",
      body: formData,
    };
    fetch("/api/create-assignments/", requestOptions)
      .then((response) => {
        if (response.ok) {
          return response.json();
        } else {
          setMessage("All fields are required");
          setIsError(true);
        }
      })
      .then((data) => {
        setMessage("Assignment created successfully");
        setIsSuccess(true);
      });
  };
Вернуться на верх