因此,session
当他们登录我的 Node.js 应用程序时,我存储了一个用户。我有管理员和默认用户,如果我#{session.user.role}
在 Jade 模板中输出,我会得到default
或admin
出现。在我的页面上进行测试时,-if(session.user)
如果没有人登录,我可以隐藏页面上的项目,用于隐藏项目,但是如何为非管理员用户隐藏项目?
我试过把,-if(session.user.role === 'default')
但我得到一个错误说Cannot read property 'role' of undefined
。所以这行不通,关于如何做到这一点的任何想法?
这是使用 Mongoose 的用户模式:
var User = new Schema({
'key' : {
unique : true,
type : Number,
default: getId
},
'username' : { type : String,
validate : [validatePresenceOf, 'a Username is required'],
set : toLower,
index : { unique : true }
},
'password' : String,
'role' : String,
});