2016-10-01 32 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

謝謝。我最終做了什麼:我在passport.deserializeUser()中填充了設置集合(用戶與設置關聯)。 – rGun