我正在与Yii建立一个私人社交网络,它将在整个网站上都有“评论”,包括个人资料、事件页面、群组线程等。当用户发表文章时,他们将能够选择该内容的可见性为:
任何人
仅限注册用户
仅限朋友
自定义(特定的朋友列表)
我在想如何为这个速度建模。我考虑过使用MySQL将设置写入Comments表中的二进制“is_secure”字段-如果是真的,那么转到一个包含三列的表:comment_id、user_id和group_id。Groups(group_id)将用于用户组-注册用户、朋友。自定义将为选定的每个用户(用户id)创建一行。
这个表会变得很大(每个注释可能有几十行),所以我想知道在这里使用NoSQL是否值得考虑只用于检索,或者是否有更好的方法对此进行建模。
非常感谢!

最佳答案

类似于数据库“标志”的问题。搜索相关的销售订单问题。
IF true/false字段不同,只需为is_secure(任何人)、read_allregisteredfriendscustom添加1位字段。添加另一个包含自定义列表的表将具有comment_id(来自上一个表)和friend_id(多行)。这样,在带有LEFT JOIN on custom_friends_list_for_comments的单个查询中,您可以确定是否向用户显示页面。可选地,custom可以是逗号分隔的列表(char字段),但大小限制可能是一个问题。假设3个字母的朋友id带有逗号,每个255个字符的字段可以有64个朋友。

关于php - 在PHP/MySQL或PHP/NoSQL中建模隐私设置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13409930/

10-12 12:55