组织被禁用户的“正确”方式是什么?
我是应该简单地在现有的users表中添加一个名为is_banned的新列作为布尔值,还是应该创建一个名为banned_users的新表作为具有user_id的数据透视表
同样的问题也适用于管理员。我应该为站点管理员创建一个新表,还是只创建一个名为is_admin的新列
这两个选项的性能如何?
谢谢。
发布于 2015-07-21 05:51:00
满足多种标准的可扩展解决方案如下所示:
包含用户数据的角色表,包含角色的users
roles
user2roles你将用户数据与他们在应用程序中的实际角色分开-每个用户至少会有姓名和姓氏,这些与他们的权限或角色无关。
您很可能需要添加更多角色。例如,一个角色是admin。另一个角色正在被禁止。另一个角色可以被禁止一周,两周等等-基本上你可以在你去的时候添加这些角色,而不需要改变你的表来支持未来的功能。
您的应用程序(php、python等)收集数据,然后对这些角色执行操作。
现在你有了一个已经建立了关系的系统,你可以扩展,这很容易被幼儿园的孩子们理解。
这是一个混合了权限和角色的简化系统,您可以进一步扩展它,但最好保持简单。
https://stackoverflow.com/questions/31526730
复制相似问题