postgresql 为什么我会得到“第一次编译时检测到未定义的绑定"?

xytpbqjk  于 2023-01-30  发布在  PostgreSQL
关注(0)|答案(2)|浏览(117)

我有一个应用程序与3路线:注册、登录和 Jmeter 板; Jmeter 板是受保护路由。
在我的 Jmeter 板路由中,我创建了一个将检索用户信息的发布请求。
在我的服务文件中:

//Return a user by ID
const getUserById = (id) =>
  knex('users').select('user_name').where({ user_id: id }).first();

在我的控制器文件中:

async function create(req, res, next) {
  try {
    const user = await service.getUserById(req.user);
    res.json(user);
  } catch (err) {
    console.error(err.message);
  }
}

我得到这个错误:
Undefined binding(s) detected when compiling FIRST. Undefined column(s): [user_id] query: select "user_name" from "users" where "user_id" = ? limit ?
我的表users有4列:用户ID、用户名、用户电子邮件和用户密码。
我的服务文件或控制器文件有什么问题?

fnatzsnv

fnatzsnv1#

从代码来看,req.user必须未定义。

yc0p9oo0

yc0p9oo02#

当函数需要一个id时,您将用户对象传递给函数。
service.getUserById(req.user)
但是函数签名是:
const getUserById = (id) => ...

相关问题