Как прочитать значение JSon из возвращаемой JSON.stringify (Node Express)

голоса
0

В моем узле экспресс server.js, у меня есть этот маршрут:

app.get('/athlete_id_table', function(req, res) {
  database.select('*').from('participants').then(data => {
    console.log(data);
    if (data.length) {
      res.render('athlete_id_table', {
        name: JSON.stringify(data)
      });
    } else {
      res.json({
        msg: 'Could not get athlete ID, first name and last name'
      });
    }
  }).catch(err => res.sendStatus(400))
});

Этот маршрут возвращает объект атлет с идентификатором, athlete_id, электронной почтой, first_name и last_name.

В шаблоне «athlete_id_table» HBS, я возвращаю stringify объект и все, что я вижу в браузере является массив.

<body>
  {{name}}
</body>

Вывод в браузере: [{ ID: 1, athlete_id: 1, электронная почта: xxxx@gmail.com, first_name: Джош, last_name: Stern}]

Я попробовал, добавив .first_name, но я получаю пустую страницу. Может кто-то сказать, как я показываю первое имя, например. Для целей тестирования у меня только один спортсмен в базе данных.

<body>
  {{name.first_name}}
</body>

Спасибо.

Задан 07/11/2018 в 20:07
источник пользователем
На других языках...                            


1 ответов

голоса
2

nameявляется массивом, а не объект, поэтому , чтобы сделать имя, используйте {{name.[0].first_name}}.

Ответил 07/11/2018 в 20:43
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more