Разделить данные из MySQL в представлении Jade / Pug - PullRequest
0 голосов
/ 28 октября 2018

Ниже код выдает список адресов из базы данных, который выглядит примерно как " 123 Hollywood Ave., Los Angeles, California ".Однако я только хочу отобразить 123 Hollywood Ave .Я попытался разделить адрес с помощью метода split(',') в js, но он все равно ничего не делает и показывает обычные детали адреса

address.js

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res, next) {
    console.log(req.session.userId);
    var user = req.session.user,
        userId = req.session.userId;
    console.log(userId);
    //console.log('ddd='+userId);
    if (userId == null) {
        res.redirect("/login");
        return;
    }
    req.app.get('db').query("SELECT address FROM customer", function(err, rows, fields) {
        if (err) throw err
        var customer_list= rows;
        var address_list = [];

        for (var i = 0; i < customer_list.length; i++){
            var split = customer_list[i].split(',');
            address_list.push(split[0]);
            console.log(address_list)
        }
            res.render('fix_address', {
                address_list: address_list,
            });                
        });
     });

module.exports = router;

address.pug

extends layout

block content

  div.container
    for customer in customer_list
      li        
          = customer.address_list

1 Ответ

0 голосов
/ 28 октября 2018

Убедитесь, что вы ссылаетесь на одну и ту же переменную как в маршруте, так и в шаблоне.

res.render('fix_address', {
  address_list: address_list,
});

Должно быть:

res.render('fix_address', {
  customer_list: customer_list
});

Если вы хотите, чтобы этот шаблон отображал что-либо:

for customer in customer_list
  li= customer.address_list
...