0

我们如何最好地表示一个父子关系,其中孩子有自己的设置,父母有自己的设置,但父母可以覆盖孩子?

我的用例是相册的隐私级别。每个相册和每张照片都有一个隐私级别。因此,如果相册 = 自定义,那么每张照片都可以有不同的隐私级别。但是当然,如​​果相册设置为“仅限朋友”,则照片不能公开,因此任何公开的照片都会被覆盖为私人照片。或者,如果相册设置为“仅限网络”,则朋友可以看到它,但公众不能。

我不确定这是通过应用程序逻辑还是通过模式来处理的。如果通过应用程序逻辑,那么我需要这些表中的“任何”列,还是 100% 应用程序端?

4

2 回答 2

0

我认为这必须在应用程序中。这不是很多工作,基本上你检查相册是否有隐私级别,如果有,将其应用于其子级,否则使用子级的隐私级别。这不是您在数据库中处理的那种事情。

于 2011-02-08T22:31:20.253 回答
0

您可以有一个权限层次结构,0 - 公开,1 - 网络,2 - 朋友,3 - 自我。相册和照片都将在数据库中具有权限字段,但照片的权限始终必须 >= 他们所在相册的权限。默认情况下,它们等于相册权限。

这样,您就可以拥有一个仅限网络的相册,其中包含一些仅限朋友的照片和一些仅限自己的照片。

因此,每个对象的权限信息将存储在数据库中,但应用程序将控制可以为照片设置哪些权限,当然,谁可以根据对象的权限和权限来查看哪些相册/照片。访问者的状态/位置。

于 2011-02-08T22:48:24.090 回答