我正在创建一个待办事项列表应用程序来处理数据库。我在以前的基础上工作,可以在添加后立即显示任务。但是如果您重新启动节点服务器,数据不会保存。逻辑。
例如,如果你输入一个任务并添加它,它会显示任务但不会保存它。
这就是依赖关系:
const express = require("express");
const ejs = require("ejs");
const jQuery = require("jquery");
const bodyParser = require("body-parser");
const pg = require("pg");
字符串
我很确定问题出在db声明上。这是连接:
const db = new pg.Client({
host: "localhost",
port: dbPort,
user: "postgres",
password: "postgres",
database: "todolist"
})
型
这是一条邮递路线(可能缺少了一个Await/Await):
app.post("/submit", (req, res) => {
let toDo = new Date(req.body.toDo).toDateString();
console.log(toDo);
const task = {
title: req.body.title,
toDo: toDo,
done: false
}
tasks.push(task)
console.log(tasks[0].title);
try {
db.query('INSERT INTO tasks (task_name) VALUES ($1)', [tasks[0].title.toString()]) // try function is on, but doesn't insert data.
console.log("Data inserted.")
} catch (error) {
console.log(error);
}
res.render("index.ejs", {
tasks: tasks,
})
});
型
在try/catch语句中,“Data inserted.”console.log()起作用,这意味着它试图添加到数据库,但我不明白为什么在Postgre Admin上看不到它。
repo在这里:https://github.com/sambarnades/todo/tree/develop
希望有人能帮助我!谢谢!
我试着用PostgreSQL添加数据库功能。
1条答案
按热度按时间yzckvree1#
找到了这个解决方案:
字符串
好用!谢谢帮忙!