Работа над пониманием основ CRUD с настройкой простых маршрутов из моего документа HTML5 в базу данных Postgres.Мои кнопки GET и POST работают, но мой DELETE не удаляется из моей базы данных.Я понимаю, что все маршруты выглядят очень похоже (и попытался переименовать их, чтобы увидеть, попадет ли она в функцию обратного вызова, связанную с базой данных, но она не работает).Может кто-нибудь сказать мне, почему моя форма HTML5 не работает с моим маршрутом для достижения базы данных для удаления?Спасибо!
Я включу только тот код, на который я ссылаюсь, так как у меня весь другой код работает хорошо.Сначала начнем с показа дрянного HTML, затем index.js с маршрутами, а затем query.js с запросами к базе данных.(////// Отдельные документы, где вытащен код :))
<h1>Let's DELETE ONE Human</h1>
<form action="/users/:id" method="delete">
ID:<input type="number" name="id">
<input type="submit" name="">
</form>
/////////////////////////////////////////////////////////////////
app.get('/', (request, response) => {
response.sendFile(path.join(__dirname + '/html/homepage.html'))
}, db.getUsers)
app.get('/newHuman.html', (request, response) => {
response.sendFile(path.join(__dirname + '/html/newHuman.html'))
})
app.get('/users', db.getUsers)
app.get('/users/:id', db.getUserById)
app.post('/users', db.createUser)
app.put('/users/:id', db.updateUser)
app.delete('/users/:id', db.deleteUser)
app.listen(port, () => {
console.log(`App running on port ${port}.`)
})
////////////////////////////////////////////////////////////////////////
const deleteUser = (request, response) => {
const id = parseInt(request.query.id)
pool.query('DELETE FROM users WHERE id = $1', [id], (error, results) => {
if (error) {
throw error
}
response.status(200).send(`User deleted with ID: ${id}`)
})
}
TL; DR
Как отправить по правильному маршруту (даже спросто дважды (с помощью POSTing) из моего HTML, когда app.delete и app.put имеют одинаковый маршрут?Пробовал переименовывать маршрут, не сработало, но я знаю, что вам не нужно переименовывать, чтобы он работал.Вот маршруты:
app.put (' / users /: id ', db.updateUser) app.delete (' / users /: id ',db.deleteUser)