我正在尝试在我的哈巴狗代码中创建一个“ each”,但是运行该应用程序后,我收到一条错误消息,提示“无法读取未定义的属性'length'”。

这是我的哈巴狗模板代码:

extends ../templates/default

block content
  - var item = [];
  form.post(action='http://localhost:3000/users/panel', method='post')
    img.avatar(src='/img/avatar.jpg', alt='')
    input(type='text', name='post', value='', placeholder='Escribe algo')
    input(type='submit', value='Publicar')
  #card-container
    .card
      img.avatar(src='/img/avatar.jpg', alt='')
      .name='@'+user.nombre
      .date='id='+user.id
      p.card='Hi!'
  table
    thead
      tr
        th # pub
        th # user
        th Publicacion
    tbody
      each item in items
        tr
          td=item.id_publicacion
          td=item.id_user
          td=item.publicacion


这是我的控制器:

getPubs: function(req, res, next) {
    var config = require('.././database/config');
    var db = mysql.createConnection(config);

    db.query('SELECT * FROM publicaciones', function(err, rows, fields) {
        res.render('panel', {
            items: rows
        });
    });
}


最后这是路由器(我打电话给我):

router.get('/users/pubs', controllers.UserController.getPubs);

最佳答案

您正在渲染中调用“面板”,但看起来像是在“用户”中一样,因此您必须输入以下内容:

getPubs: function(req, res, next) {
    var config =require('.././database/config');
    var db = mysql.createConnection(config);

    db.query('SELECT * FROM publicaciones', function(err, rows, fields) {
        res.render('users/panel', {
            items: rows
        });
    });
}

关于mysql - 无法读取帕格/ Jade 的属性“长度”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45700649/

10-11 05:16