2016-10-01 2 views
1

Я знаю, что этот паспорт выдает текущего пользователя (я думаю, используя политику «паспорт») в req.user. Я хочу сделать аналогичную вещь для настроек конкретного пользователя, которые хранятся в отдельной коллекции (чтобы они были доступны в req.settings). Как я могу это сделать?Сделать настройки пользователя доступны в req

ответ

1

Метод serializeUser отвечает за этот https://github.com/jaredhanson/passport#sessions

passport.serializeUser(function(user, done) { 
    done(null, user.id); 
}); 

Таким образом, вместо того, чтобы просто сериализации user.id вы можете сериализовать настройки тоже:

passport.serializeUser(function(user, done) { 
    var sessionUser = { _id: user._id, name: user.name, settings: [...] } 
    done(null, sessionUser); 
}); 

Вы можете прочитать Safe to store complete user info in session with Sails.js?

+0

Спасибо. Что я закончил делать: я заполнил набор настроек (пользователь был связан с настройками) в файле паспорт.deserializeUser(). – rGun