【发布时间】:2021-08-28 08:30:27
【问题描述】:
有没有办法通过roles的对象键在这个结构中查询?
interface UsersModel{
_id: string;
email: string;
roles: { [key: string]: RolesType[] };
}
现在我将数据输入users,例如:
roles: {
$ne: null
}
然后
const finalResult = users.filter(u => Object.keys(u.roles).includes('objectKeyIwant'));
这可以在 mongodb 端完成并避免获取所有数据然后对其进行过滤吗?
数据示例: 用户集合是这样的:
{
_id: '610baff85c071a2bd59dc84f',
email: 'some@email.com',
roles : {
"shop1" : [
"shop_stock_manager"
],
"shop2" : [
"shop_admin",
"shop_stock_manager"
]
}
}
我想获取在shop2 中具有任何角色的所有用户。
【问题讨论】:
-
你能分享一些示例数据和预期输出吗?
-
你能提供一个你的用户文档的示例 json 吗?
-
伙计们,我已经在问题中添加了详细信息。
-
你能检查我的答案吗?
标签: javascript typescript mongodb mongodb-query