gpt4 book ai didi

architecture - 在设计像 Stack Overflow 这样的基于点的权限系统时,需要考虑哪些架构最佳实践?

转载 作者:行者123 更新时间:2023-12-04 03:58:32 24 4
gpt4 key购买 nike

Stack Overflow 有一个基于积分的权限系统,它决定了网站上的很多东西,例如您可以编辑的内容以及向系统添加新标签的能力。

你会给设计这样一个系统的人什么建议,特别是在架构实现方面?你在哪里存储权限?您如何使用这些权限来确定哪些字段在 View 中显示为可编辑?有没有好的开源代码示例可供学习?

关于对象模型(例如问题或文档)的所有权或共享,在该对象模型上存储对所有者的引用与在帐户模型中存储对该对象的引用的优缺点是什么?例如

document = { id:          21234,
owner_id: 4d3ca9f1c067,
shared_with: [a50d1e000138, 4d3ca9f1c067a, 50d1e000138] }

对比
user = { id:              4d3ca9f1c067,
documents_owned: [21234, 31452, 12312],
collaborates_on: [23432, 43642, 12314, 23453] }

最佳答案

将权限作为需要权限的点对存储在单独的模型中。

在 View 中判断登录用户是否有足够的权限来显示每一项,引用上面描述的权限模型。

模型选项:我更喜欢前者,因为 (1) 它具有更简单、更扁平的结构,因此在列出问题时没有通过用户表的嵌套循环,以及 (2) 删除文档不需要更新用户对象。 (除非他们的分数在文档被删除等情况下下降。)

关于architecture - 在设计像 Stack Overflow 这样的基于点的权限系统时,需要考虑哪些架构最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5096144/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com