猫鼬发现有或没有条件

时间:2019-07-19 13:46:03

标签: node.js mongodb typescript mongoose

我对node.js / mongodb应用程序有一个简单的问题。如果用户是超级管理员,而我是普通管理员,则我希望获得所有用户。我只需要同一客户端的用户。

我尝试过这样的事情:

const client = req.user.role === 'SA_ROLE'? null : req.user.client;
User.find({'client': client})... 

还有:

const client = req.user.role === 'SA_ROLE'? '': req.user.client;
User.find({'client': client})... 

但是在两种情况下,当用户都是SA时,它都会返回cero用户。

1 个答案:

答案 0 :(得分:1)

如果要获取所有用户,则过滤器应为{}。因此此代码可能有效:

let query = req.user.role === 'SA_ROLE'? {} : {client: req.user.client};
User.find(query)...