我想在视图中输出用户名,所以我需要获取用户对象。
在中
req.session.passport.user
只有用户id(数字)和
req.user
未定义。使用用户是否存储为会话中的对象?
您应该在某个地方有这样的东西(在service/products/local.js的connect®ister函数中,如果您使用了sails generate auth)
Passport.create({
protocol : 'local'
, password : password
, user : user.id
}, function (err, passport) {
...
因此,只需在此处添加用户名即可。
您需要配置您的策略。
我通过在APP_ROOT/config/policies.js 中进行更改来实现这一点
UserController: {
me: ['passport']
},
HomeController: {
'*': ['passport']
}
在此之后,用户和主控制器下的所有视图都可以访问用户对象。示例:
<p>Hi <%=res.locals.user.username%></p>