CakePHP允许用户将其他用户添加为好友并将其分组


CakePHP allow users to add other users as friends and group them

我在CakePHP为用户建立一个基于此的朋友系统:在CakePHP中添加朋友功能

但是我需要添加两个额外的功能:

1)。用户需要能够请求和确认/取消好友请求

2)。用户需要能够分组的朋友,如朋友,家人,同事等

谁能给我一些关于我需要哪些额外的表以及它们与现有表之间可能的关系的想法?

同样,根据那篇文章,关系似乎是基于哪个用户问了谁,但我不太关心这一点,那么我该怎么做才能使它只是一种关系,而不是跟踪哪个用户请求了友谊以及谁是好友?

注意:我之前问过一个类似的问题,因为每个人都误解了这个问题,所以不得不删除它。我问了一个问题,就像上面提到的那样,希望得到他们在表和关系方面的答案。

在关系数据库表中需要一个名为confirmed或类似的字段。基本上,当一个朋友被请求时,一个记录被创建,但确认设置为0。当"被请求者"接受友谊时,确认字段设置为1,或者如果被拒绝,则删除记录(允许请求者再次请求友谊)。

要进行分组,显然需要一个具有ID和非唯一名称字段的groups表,以及一个具有两列:relationship_idgroup_idgroups_relationships表。这将允许用户将朋友放入组中。然后,您可以使用group_id查询groups_relationships表,以查找成员在该组中放置的朋友的id。