Экспресс / Джейд получить текущий пользователь в поле зрения - PullRequest
3 голосов
/ 03 февраля 2012

У меня есть простое приложение nodejs / express на этом примере.В этом представлении проверяется переменная everyauth.loggedIn, но в моем приложении я не использую модуль everyauth. Вместо этого я использую следующий код:

req.session.auth = user;

.вид в этом случае?

Ответы [ 2 ]

7 голосов
/ 03 февраля 2012

Вам нужно будет использовать dynamicHelper, чтобы выставить что-либо в объекте сеанса (или самом объекте сеанса).Вы можете сделать что-то подобное в вашем app.js:

app.dynamicHelpers({
  auth: function(req, res){
    return req.session.auth;
  }
});

Тогда в ваших представлениях у вас будет переменная auth, которая указывает на объект сеанса.Например:

You are logged in as <%= auth.name %>
1 голос
/ 03 февраля 2012

Просто чтобы добавить некоторую информацию, ответ Скотта - это способ сделать объект «auth» доступным во всех ваших представлениях ( Express 'Dynamic Helpers doc ), но если вы хотите использовать еготолько в одном конкретном представлении вы можете передать его, используя локальные данные в методе рендеринга ( Express 'res.render doc ):

res.render('yourView', { auth: req.session.auth });
...