I try to upload the files in Django REST framework and I read this documentation https://www.django-rest-framework.org/api-guide/parsers/#multipartparser. However, I have misunderstanding about the uses of MultiPartParser and FormParser. What is the idea of uses MultiPartParser and FormParser? I'm writing the code that can upload the file without using MultiPartParser and FormParser and it works fine!. So, is it necessary to use MultiPartParser and FormParser?
model.py
class Examole(TimeStampedModel):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT)
name = models.CharField(max_length=128)
file = models.FileField(
upload_to=path_and_rename('user/po', 'po'),
storage=private_storage,
validators=[validate_file_extension])
view.py
class UploadingFilesView(generics.CreateAPIView):
serializer_class=UploadingFilesSerializer
permission_classes = [AllowAny]
def perform_create(self, serializer, format=None):
file=self.request.FILES['file']
serializer = UploadingFilesSerializer(data=self.request.data,
context={'file':file})
if serializer.is_valid(raise_exception=True):
if self.request.data.get('file') is not None:
file.name = self.request.data.get('file').name
file.user = self.request.user
serializer.save(name=file.name,
user=file.user)