0

我有一个包含 3 条路线的应用程序:注册、登录和仪表板;仪表板是受保护的路线。

在我的仪表板路线中,我正在创建一个将检索用户信息的发布请求。

在我的服务文件中:

//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 列:user_id、user_name、user_email 和 user_password。

我的服务文件或控制器文件有什么问题?

4

1 回答 1

0

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

于 2021-07-28T21:16:07.780 回答