Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

164
Visualizações
Vue formdata () para que se agreguen múltiples objetos en la base de datos desde el serializador django

Quiero agregar varios objetos a formdata para que puedan agregarse en la base de datos al mismo tiempo.

Este es mi código javascript para enviar el objeto.

 addImages(id) { const formData = new FormData(); this.imageArray.forEach((element) => { formData.append("image",element); formData.append("product", id); }); let config = { headers: { Authorization: `Bearer ${this.$store.state.accessToken}`, "Content-Type": "multipart/form-data" }, }; axios.post(`http://127.0.0.1:8000/images/`, formData, config,); },

El problema es que en el backend la información viene así:

 <QueryDict: {'product': ['31', '31'], 'image': [<InMemoryUploadedFile: allstar.jpg (image/jpeg)>, <InMemoryUploadedFile: cat.jpeg (image/jpeg)>]}>

Y para que se agregue a la base de datos, debería verse similar a esto.

 [{'product':'31','image': [<InMemoryUploadedFile: allstar.jpg (image/jpeg)]>}, {'product':'31','image':<InMemoryUploadedFile: cat.jpeg (image/jpeg)>]}>]

Una solución que se me ocurrió fue modificar los datos cuando los recibí en el backend

 data_list =[] new_data = dict(request.data) for x,y in zip(new_data['image'],new_data['product']): data_list.append({'image':x,'product':y})

Me preguntaba si había una solución más limpia que se pudiera hacer cuando se formdata

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda