繁体   English   中英

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

[英]How to get to display database items in ejs/html using Nodejs/mongodb/mongoose?

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 中显示项目? 我如何定义名称变量?

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM