jeerjmin
@jeerjmin

Как передать несколько массивов значений через axios.put в mongoose?

Здравствуйте. Разбираюсь в mongo-express-react-node. Прошу помочь.

У меня есть приложение по добавлению карточек и записей к каждой карточке.
Вот как это выглядит.
5b27a5cf89ba2894052394.png

Карточки и записи хранятся в разных массивах, cards и entries соответственно.
5b27a5e48e328695272300.png

Сейчас только массив cards сохраняется в бд и загружается из нее в state.

Выглядит это так

Actions

export const add = (cards) => {

  if (cards.length > 0) {
    return () => {
      axios.post(API_URL, {cards})
    }
  }

  else {
      cards = "empty"
      return () => {
          axios.post(API_URL, {cards})
      }
  }

};

export const searchDB = () => {
  return (dispatch) => {

    axios.get(`${API_URL}`)
      .then((res) =>
      {
        if (res.data[res.data.length - 1].cards == "empty") {

          dispatch({type: 'TODO_SEARCHED', payload: [] })
        }

        else {
            dispatch({type: 'TODO_SEARCHED', payload: res.data[res.data.length - 1].cards})
        }

      }
  );

  };
};


todo.schema
const todoSchema = new mongoose.Schema({
    cards: {type: Array, required: true},
    createdAt: {type: Date, default: Date.now}
});


Как передавать также массив entries ? Не разобрался с параметрами axios.post()
  • Вопрос задан
  • 412 просмотров
Решения вопроса 1
rockon404
@rockon404 Куратор тега React
Frontend Developer
Не надо копить, а затем отправлять все данные сразу. Коллекциями их принято только забирать с сервера.
1. Каждое добавление карточки это POST запрос на добавление одной карточки.
2. Каждое добавление записи это POST запрос на добавление записи.
3. Каждое обновление записи или карточки это PUT/PATCH запрос с обновленными данными одной записи/карточки.
4. При удалении карточки, если записи лежат отдельно, на стороне сервера надо их так же удалить.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы