Отправить несколько запросов к REST API django из массива с использованием Axios в Reactjs

#django #reactjs #django-rest-framework #axios

#django #reactjs #django-rest-framework #axios

Вопрос:

У меня есть массив, я хочу получать все значения одно за другим из массива и отправлять значение, используя axios, в rest-api django

В Django у меня есть модель:

 class Cars(models.Model):
    car = models.CharField(max_length=100)

  

я хочу добавить данные в свою модель из сообщения axios вот мой массив, из этого массива я хочу получить значение и добавить его в свою модель один за другим при одной отправке,

 let cars = [
   ["Saab", "Volvo", "BMW"],
   ["Toyota", "Alto", "Civic",]
]
  

я попробовал вот так,

   handleFormSubmit = event => {
     event.preventDefault();
    for (var i = 0; i < cars.length; i  ) {
       axios.post('myURL',{
            car: car[i]
        })
        .then(res => console.log(res))
        .catch(err => console.log(err));
      }
    }

  

и после отправки я получил сообщение об ошибке: «Запрос не выполнен с кодом состояния 400»,
когда я делаю публикацию axios вне цикла, это нормально, но я хочу добавить несколько данных из массива.

Ответ №1:

ошибка 400 означает, что:

Неверный запрос. Ваш браузер отправил запрос, который этот сервер не смог понять.

Попробуйте использовать функцию forEach в своем фрагменте. Что-то вроде этого:

  handleFormSubmit = event => {
     event.preventDefault();
     cars.forEach(car =>
       axios.post('myURL',car)
        .then(res => console.log(res.data))
        .catch(err => console.log(err));
      }
    }
  

Ответ №2:

вы объявили переменную как cars и использовали car в цикле.

  • axios.post('myURL',{
    car: cars[i]
    })

попробуйте это изменение