Как сохранить n входов в массив, используя mysql в express. js - PullRequest
0 голосов
/ 19 июня 2020

Привет, я новичок в веб-разработке. Я хотел принять n номер экземпляра (n вводится пользователем) от пользователя, а затем сохранить эти значения в структуре, подобной массиву, чтобы мой интерфейс мог иметь доступ к Это. Можно ли это сделать с помощью mysql?. Я читал сообщения StackOverflow, в которых упоминалось, что использовать MySQL для этого - не лучшая идея. Однако я уже как бы углубился в свой проект, поэтому хочу прояснить это.

Возможно ли это, используя MySQL?

1 Ответ

2 голосов
/ 19 июня 2020

Я думаю, вы хотите сохранить что-то вроде объекта или массива чего-то предположим, что в вашем интерфейсе есть форма с вводом и кнопкой, где ввод - это Добавить столбцы, а ввод - это значение, поэтому в вашем бэкэнде вы получите массив объектов, таких как

[
        { question: '1', answer: 'Answer1' },
        { question: '2', answer: 'Answer2' },
        { question: '3', answer: 'Answer3' },
        { question: '4', answer: 'Answer4' }
]

, вы можете составить таблицу

id | userId | полезная нагрузка

, где идентификатор создается с помощью SQL userId, который вы ввели в токен (или что-то еще, чтобы связать пользователя с его полезными данными) и полезную нагрузку, которая содержит информацию, которую вам нужно сохранить

const saveUserPayLoads = async (req, res) => {

    const { payloads } = req.body;
    const { id } = req.user
    const data = []
    for(payload of payloads) data.push(DBModule.create({ payload: JSON.stringify(payload), userId: id }))
    return res.status(201).json({
      message: 'Done',
      success: true,
      data
    })

}

...