gpt4 book ai didi

mysql - 如何使用 Express 访问 get 请求的结果(对象)?

转载 作者:行者123 更新时间:2023-11-29 18:35:38 25 4
gpt4 key购买 nike

这是我对 mysql 表发出的 get 请求

app.get('/', (req, res) => {
let sql = 'SELECT * from emarttesttable WHERE id = 229';
let query = db.query(sql, (err, results) => {
if(err){console.log(err);}
else{
console.log(results);

}
});
res.render('index');

});

就目前而言,这个函数允许我从表中获取我想要的信息,并且我可以通过 console.log 读取结果。但是,我无法访问 index.ejs 页面上的结果。

如何访问我的index.ejs 文件中的结果(这是一个包含我想要的内容的对象)?每当我尝试访问结果时,它都会说结果未定义。如何确保由于调用表而创建的对象能够在不同的页面上使用/访问。目前,我只想创建一个简单的表,其中键位于一列中,值位于第二列中。

最佳答案

您需要如下修改您的代码。原因是 db.query 是一个异步操作,并且您尝试在异步请求完成之前呈现。此外,为了能够在模板引擎中获得结果,您需要将结果传递给渲染器。 (索引.ejs)

app.get('/', (req, res) => {
let sql = 'SELECT * from emarttesttable WHERE id = 229';
let query = db.query(sql, (err, results) => {
if(err){console.log(err);}
else{
res.render('index', results);
console.log(results);

}
});

关于mysql - 如何使用 Express 访问 get 请求的结果(对象)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45329299/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com