网球场预订系统的数据库表
Database tables for tennis court booking system
我正在尝试为足球场管理找到 class 图和数据库结构的最佳实现。该系统有三个参与者:
- 超级管理员:使用所有权限管理一切(网络后台)
- 球场所有者:可以创建一个可能拥有多个球场的足球俱乐部(网络后台)
- 玩家:谁可以查看俱乐部并预订可用的体育场(移动)
我的问题是:
由于三个actor属性相同,所以不需要"user"和"owner"、"player"之间的"extend"关系, "admin",而且我不能只有 class "user" 因为不是所有用户都可以提交评论,只有所有者可以添加俱乐部...那么如何管理权限具有相同属性的不同用户?我是否需要用户组 table 来帮助我了解每个用户的组 ("owner"、"admin"、"player")? (我看到 Joomla 和 Wordpress 使用用户组 table)
俱乐部可以有很多体育场(球场),在大多数情况下,它们是相同的,所以在我的解决方案中,有两个 classes "club" 是否正确和 "stadium" 并将公共信息(城市、纬度、经度)放在 class "club" 中?
考虑到球员可以预订俱乐部的体育场,而俱乐部还有另一个可以预订的可用体育场,我的解决方案是否正确?
我需要您对足球俱乐部管理的最佳实施的指导和建议,其中:
- 有3位演员("player","admin","club owner")
- 每个演员都有不同的特权(只有所有者可以创建俱乐部,只有玩家可以预订和评论...)
Avery Club 可以有很多场馆,玩家可以预订其中一个或多个,我们需要跟踪同一俱乐部的其他场馆的可用性。
这是我尝试过的:
编辑 link:https://creately.com/diagram/iaqn8ddo/T1IfqHRrhGcHYPihjOwMIQSwM%3D
查看Link:http://creately.com/diagram/example/iaqn8ddo/Copy%2Bof%2BTakwira
看起来还不错。
- 您已经 class 演员。这样就完成了。
- "privileges" 可以通过分配专门的 classes 相应的方法来建模。即:
Owner
有一个 createClub()
方法,Player
有 book()
等
- 您需要一个
Booking
class 来跟踪 Player
所做的预订
一个观察:从Stadium
(你的名字打错了)到SportsClub
的作文似乎没有意义。俱乐部不是由体育场组成的。在最好的情况下,它由成员组成。将其替换为关联并使用 ownedStadium
作为角色。
我正在尝试为足球场管理找到 class 图和数据库结构的最佳实现。该系统有三个参与者:
- 超级管理员:使用所有权限管理一切(网络后台)
- 球场所有者:可以创建一个可能拥有多个球场的足球俱乐部(网络后台)
- 玩家:谁可以查看俱乐部并预订可用的体育场(移动)
我的问题是:
由于三个actor属性相同,所以不需要"user"和"owner"、"player"之间的"extend"关系, "admin",而且我不能只有 class "user" 因为不是所有用户都可以提交评论,只有所有者可以添加俱乐部...那么如何管理权限具有相同属性的不同用户?我是否需要用户组 table 来帮助我了解每个用户的组 ("owner"、"admin"、"player")? (我看到 Joomla 和 Wordpress 使用用户组 table)
俱乐部可以有很多体育场(球场),在大多数情况下,它们是相同的,所以在我的解决方案中,有两个 classes "club" 是否正确和 "stadium" 并将公共信息(城市、纬度、经度)放在 class "club" 中?
考虑到球员可以预订俱乐部的体育场,而俱乐部还有另一个可以预订的可用体育场,我的解决方案是否正确?
我需要您对足球俱乐部管理的最佳实施的指导和建议,其中:
- 有3位演员("player","admin","club owner")
- 每个演员都有不同的特权(只有所有者可以创建俱乐部,只有玩家可以预订和评论...)
Avery Club 可以有很多场馆,玩家可以预订其中一个或多个,我们需要跟踪同一俱乐部的其他场馆的可用性。
这是我尝试过的:
编辑 link:https://creately.com/diagram/iaqn8ddo/T1IfqHRrhGcHYPihjOwMIQSwM%3D
查看Link:http://creately.com/diagram/example/iaqn8ddo/Copy%2Bof%2BTakwira
看起来还不错。
- 您已经 class 演员。这样就完成了。
- "privileges" 可以通过分配专门的 classes 相应的方法来建模。即:
Owner
有一个createClub()
方法,Player
有book()
等 - 您需要一个
Booking
class 来跟踪Player
所做的预订
一个观察:从Stadium
(你的名字打错了)到SportsClub
的作文似乎没有意义。俱乐部不是由体育场组成的。在最好的情况下,它由成员组成。将其替换为关联并使用 ownedStadium
作为角色。