【发布时间】:2021-12-01 05:58:28
【问题描述】:
我有一个异步函数试图返回表“posts”中的行数
async getPostCount() {
return db('posts').count('id');
}
这在 API 中使用...
router.get(
'/count',
async (req, res, next) => {
try {
await PostsService.getPostCount()
.then(result => {
res.json({
count: result,
token: req.query.secret_token
})
})
.catch((err) => {
throw(err);
});
}
catch (err) {
console.log(err);
res
.status(500)
.json({ success: false, msg: `Something went wrong. ${err}` });
}
}
)
但是,我收到一个错误,并且无法在 Internet 上找到任何相关信息。
Something went wrong. error: select * from "posts" where "id" = $1 limit $2 - invalid input syntax for type integer: "count"
会发生什么?
【问题讨论】:
-
在这种情况下
db是什么? -
db是一个用于与数据库通信的 Knex 对象。有了它,您可以访问 Postgresql 表、触发器等。
标签: javascript postgresql knex.js