如何使用 Nodejs/mongodb/mongoose 在 ejs/html 中显示数据库项目?

Posted

技术标签:

【中文标题】如何使用 Nodejs/mongodb/mongoose 在 ejs/html 中显示数据库项目?【英文标题】:How to get to display database items in ejs/html using Nodejs/mongodb/mongoose? 【发布时间】:2020-07-09 18:17:33 【问题描述】:

Nodejs / Mongo / Mongoose 数据库可以获取并显示到页面,但我无法让它以 html 格式显示项目,即表格格式。

这是创建有效的数据库

app.post('/insert',   require('connect-ensure-login').ensureLoggedIn(),
function(req, res, next) 

 let name = req.user.username;

      Order.create(
              name: name,
            )
            .then(user => res.send(user))
            .catch(err => res.send(err));
            res.redirect('/');
    );

这是 server.js,它通过在空白订单页面上显示数据库项目来工作。

  app.get('/orders',
      function(req, res) 

     let name = req.user.username;

        Order.findOne( name: name )
           .then(user => res.send(user))
            .catch(err => res.send(err));
        );

我在 server.js 中尝试了以下

  app.get('/orders',
    require('connect-ensure-login').ensureLoggedIn(),
    function(req, res)
      res.render('orders',  user: req.user );
    );

在 ejs/html 中

  <tr>
        <td>Style</td>
        <td><%= name %></td>
    </tr>

但收到错误“名称未定义”。

我需要做什么才能在 html 中显示项目? 如何定义名称变量?

【问题讨论】:

【参考方案1】:

在 ejs 文件中访问变量时的名称必须与您在渲染函数中传递的相同。 代码看起来像(ejs):

<tr>
        <td>Style</td>
        <td><%= user %></td>
    </tr>

【讨论】:

以上是关于如何使用 Nodejs/mongodb/mongoose 在 ejs/html 中显示数据库项目?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用本机反应创建登录以及如何验证会话

如何在自动布局中使用约束标识符以及如何使用标识符更改约束? [迅速]

如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?

如何使用laravel保存所有行数据每个行名或相等

如何使用 Math.Net 连接矩阵。如何使用 Math.Net 调用特定的行或列?

WSARecv 如何使用 lpOverlapped?如何手动发出事件信号?