我正在基于以下内容在CakePHP中为用户构建一个朋友系统:Add a friend feature in CakePHP
但我需要添加两个额外的功能:
1。)用户需要能够请求和确认/取消朋友请求
2。)用户需要能够对朋友进行分组,例如朋友,家人,同事等
任何人都可以就我需要的额外表格以及它们与现有表格之间的可能关系给出一些想法。
同样基于那篇文章,关系似乎是基于哪个用户问谁,但我不在乎那么,所以我该做什么才能做到这只是一个关系,而不是跟踪哪个用户请求友谊和谁是朋友?
注意:我之前提出了类似的问题并且不得不删除它,因为每个人都误解了这个问题。我问的问题就像上面提到的一样,希望能得到像表格和关系一样的答案。
答案 0 :(得分:1)
您的关系数据库表中需要一个名为confirm或similar的字段。基本上,当请求友谊时,创建一个记录,但确认设置为0.当“被请求者”接受友谊时,确认字段设置为1,或者如果拒绝,则删除记录(允许请求者再次请求友谊) )。
要进行分组,您显然需要一个包含ID和非唯一名称字段的组表,以及一个包含两列的groups_relationships
表:relationship_id
和group_id
。这将允许用户将朋友放入组中。然后,您可以使用groups_relationships
查询group_id
表,以查找成员在该组中放置的朋友的ID。