Развертывание нескольких изображений в Django-rest-framework с помощью React js
Здравствуйте, я пытаюсь загрузить несколько изображений в django rest framework, используя react js.. Однако, я пробовал только с одной картинкой и все получилось, но не с несколькими. Я действительно не знаю, что за поля для этого.
вот мой model.py
class Notes(models.Model):
title = models.CharField(max_length=50)
desc = models.TextField()
time=models.TimeField(auto_now=True)
img = models.ImageField(upload_to='img',null=True) #here I want multiple img src
user = models.ForeignKey(User, on_delete=models.CASCADE , related_name='notes')
def __str__(self):
return self.title
Serializer.py
class NoteSerializer(serializers.ModelSerializer):
class Meta:
model = Notes
fields = ['id','title','desc','img','time']
views.py
class getNotes(ModelViewSet):
authentication_classes = [BasicAuthentication ,TokenAuthentication]
permission_classes = [checkPermission]
parser_classes = (MultiPartParser, FormParser)
queryset = Notes.objects.all()
serializer_class = NoteSerializer
def list(self, request , **kwa):
notes = Notes.objects.filter(user=request.user.id)
serialzer = NoteSerializer(notes, many=True)
return Response(serialzer.data)
def create(self, request, **kwargs):
notes = NoteSerializer(data=request.data)
if notes.is_valid():
print(request.user)
notes.save(user=request.user)
return Response(notes.data)
else:
return Response(notes.errors)
Что мне делать для получения нескольких img и сохранения их всех...
Фронтальная часть
функция для отправки img с помощью fetch api
let uploadPicture = (e)=>{
console.log(e.target.files);
// setImg(e.target.files);
let img=[];
let fd = new FormData()
for (var index = 0; index < e.target.files.length; index++) {
console.log(e.target.files[index]);
img.push(e.target.files[index])
}
fd.append('pic',e.target.files[0])
console.log("Fd ",fd.get('pic'));
setImg(fd.get('pic'))
console.log("Cimg ",Cimg);
}
Это тег ввода
<div className="mb-3">
<label htmlFor="img" className="form-label">Picture</label>
<input type="file" multiple className="form-control" placeholder='Enter your img...' onChange={uploadPicture} id="img" name="img" />
</div>
однако если я печатаю Cimg (состояние для imgs), то получаю пустое место, но я проверил в сети тогда это выглядит как [объект Filelist]. Так это правильно? Для отправки imgs. Или есть какой-нибудь способ сделать это?
Помогите мне... Я действительно застрял в этой загрузке нескольких img....