基本上我为我的用户(它的夜总会网站)提供了一张桌子,现在我正在努力改善他们的隐私。
到目前为止,我只是向登录用户显示一些信息,但现在我想给用户选择。
我的问题是:做什么更好的方法?
您建议我为每个希望用户管理隐私的属性创建新属性?
表“用户”的示例:
-Id
- 电子邮件
- 电话
-ShowEmail (int),0表示没有人,1表示登录用户,2表示朋友
-ShowPhone (int)
这是一个很好的选择?我不太确定我是否应该创建一个新表来处理隐私设置。我必须承认数据库设计不是我的专长,所以真的需要一些反馈。
谢谢!
编辑:隐私不只是简单的属性。我需要处理用户注册的事件,用户被标记的照片等等。
答案 0 :(得分:2)
这是一种可能性,但它会使你的桌子变得非常大并且有一些多余的字段。你有两个我个人更喜欢的选择:
查询看起来像这样: 1。
SELECT phone, (privacyFlags&8) AS showPhone FROM users
2
SELECT user.phone, privacy.ShowTo AS showPhone FROM users
JOIN privacy ON privacy.userID=users.userID
WHERE privacy.FieldName = 'phone'