You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js+Express+Handlebars如何在同一页面同时显示当前用户与全部用户列表?

解决方案

你当前的问题在于将所有用户集合与当前登录用户都通过user这个相同键名传递给模板,导致数据冲突,无法同时获取两类数据。只需为这两类数据分配不同的键名,就能在Handlebars模板中分别调用。

修改后端路由代码

将查询到的所有用户和当前登录用户用不同键名传入模板:

router.get('/', LogingCheck, roleAuth, (req, res, next) => {
    User.find((err, users) => {
        if (err) { console.log(err); }
        else {
            res.render('admin/index', { 
                title: 'Role Manager', 
                users: users,  // 所有用户列表
                currentUser: req.user  // 当前登录用户
            });
        }
    });
});

修改Handlebars模板调用

  • 显示当前登录用户名:
{{currentUser.username}}
  • 遍历显示所有用户名列表:
{{#each users}}
    {{this.username}}
{{/each}}

内容的提问来源于stack exchange,提问作者BallisticDog

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 10:25:21