0

我有用户,他们通过成员资格表成为许多团队的成员。每个团队都有一名管理员。

我的问题是:

admin 列应该是成员表中的布尔值,还是团队表中的整数(用户 ID)?

4

1 回答 1

1

最简单的是,是的:在会员表中,因为这是用户和团队之间的链接。在这种情况下,您可以更灵活地添加例如 2 个管理员。另一种方式也是一种有效的方式,考虑到明确拥有 1 个管理员是安全的。

缺点是,例如,您应该强制执行一个关系,因此 admin_id 始终链接到一个真正是团队成员的用户。所以在删除时你应该检查这个管理员是否真的仍然可用。

进一步思考:考虑您是否有多个角色,如果是这种情况,您可能会使用更复杂但更灵活的解决方案,如 ACL 之类的。

于 2012-01-30T12:36:53.287 回答