哈巴狗访问对象数组

时间:2018-07-05 17:01:35

标签: javascript node.js pug

我正在开发一个带有SQL数据库的Node.js应用,该应用返回一个包含书籍及其详细信息的对象数组。

index.js路由:

/* Books Section
_______________________________________________*/

/* GET books page. */
router.get('/books', function(req, res, next) {
  var sql = 'SELECT * FROM books';
  var query = db.query(sql, function (err, results) {
  if (err) { throw err; }
  console.log(results);
  res.render('books', { title: 'Books', results });
 });
});

我正在将Pug用作这样的模板引擎:

extends layout

block content
    each book in books
        p #{this.BookName}

它显示此错误消息:

TypeError: D:\Semantik\website\mvp\views\books.pug:4
    2| 
    3| block content
  > 4|  each book in books
    5|      p #{this.BookName}

Cannot read property 'length' of undefined

1 个答案:

答案 0 :(得分:1)

您需要将books键添加到对象中

res.render('books', { title: 'Books', books: results });

您的另一选择是更改您的each语句,使它看起来像这样

each book in results