对于一个有多种权限类型的web应用来说,什么样的mongodb模式比较好?

nwsw7zdq  于 2023-03-01  发布在  Go
关注(0)|答案(1)|浏览(115)

我正在开发一个Web应用程序(ASP.NETCore6),用户可以在其中访问各种工作环境,在这些环境中,他们可以访问多个工作空间。
关于工作环境,用户可以是“管理员”或“工作者”。这决定了用户是否能够在该环境中创建工作空间。
另一方面,工作区可以是“公共”或“私有”的.公共工作区可以由该环境中的任何用户访问,而私有工作区只能由创建所述工作区的管理员设置的授权用户访问.
我发现在这种情况下很难定义数据库模式,我考虑创建两个集合来定义用户和工作空间/工作环境之间的关系(UserIdWorkspaceIdEnvironmentId),但我不确定这样分离是否正确,因为工作空间访问也取决于他们的工作环境访问。
顺便说一句,这是我第一次使用MongoDB,所以可能我不太理解这里的关系是如何工作的。

42fyovps

42fyovps1#

我以前从未使用过ASP.NET,但您可以通过使用查询agregation.reff执行lookup来联接2个或更多集合:$lookup (aggregation)
您还可以在$lookup中进行过滤,等等。
我创建了一个如何处理类似示例数据的示例(UserIdWorkspaceIdEnvironmentId
MONGO PLAYGROUND

相关问题