我正在使用 Node.js 和 PostgreSQL 创建我的第一个应用。
这个应用程序连接到数据库并以 JSON 格式将记录返回给浏览器,在我尝试使用映射函数来格式化属性之前它的工作非常完美。
当我使用 map 时,它返回一个错误:
TypeError: rows.map 不是函数
这是我的代码。
app.get('/car/:id', (req, res) => {
const car_id = req.params.id;
const queryString = `SELECT * FROM cars WHERE car_id= ${car_id}`;
client.query(queryString, (err, rows, fields) => {
if (err) {
console.log(err.stack);
res.sendStatus(500);
res.end();
} else {
const car = rows.map((row) => {
return {"Car_ID": row.car_id}
});
res.json(car);
console.log(rows.rows);
}
});
最佳答案
应该是result.rows
而不仅仅是rows
根据这个 - https://node-postgres.com/api/result
app.get('/car/:id', (req, res) => {
const car_id = req.params.id;
const queryString = `SELECT * FROM cars WHERE car_id= ${car_id}`;
client.query(queryString, (err, result, fields) => {
if (err) {
console.log(err.stack);
res.sendStatus(500);
res.end();
} else {
const car = result.rows.map((row) => {
return {"Car_ID": row.car_id}
});
res.json(car);
console.log(result.rows);
}
});
关于javascript - Node.js:Map 函数不适用于来自 PostgreSQL 的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56368730/