Добавление новой записи в БД в NodeJS
Давайте теперь сделаем форму для добавления нового юзера в нашу базу данных:
<form action="" method="POST">
name: <input name="name">
age: <input name="age">
salary: <input name="salary">
<input type="submit">
</form>
В файле app.js
пропишем GET маршрут для рендеринга
формы:
app.get('/add', async function(req, res) {
res.render('add');
});
Далее сделаем POST маршрут для
обработки формы. В нем объявим переменные
name
, age
и salary
,
в которые будут попадать данные после парсинга
соответствующих инпутов формы. Поскольку возраст и зарплата будут
попадать из формы в виде строк, их нужно
конвертировать в числа с помощью
функции Number
. Далее прописываем
запрос к БД для вставки данных, указывая
все нужные переменные через
интерполяцию:
app.post('/add', async function(req, res) {
let name = req.body.name;
let age = Number(req.body.age);
let salary = Number(req.body.salary);
let query = `INSERT INTO users (name, age, salary) VALUES ('${name}', ${age}, ${salary})`;
let [results, fields] = await connection.query(query);
res.render('add');
});
Реализуйте форму для добавления нового юзера.
Модифицируйте предыдущую задачу так, чтобы после отправки формы значения из нее не удалялись.