rails中的友情/关注功能

时间:2012-10-15 11:03:08

标签: ruby-on-rails

任何人都实现了管理用户朋友的方式(双向友谊)和数据库中的粉丝。

意味着我想要实现的目标: 1)user1向user2发送连接请求。 2)然后user2接受user1作为朋友或关注者或拒绝它。 3)如果user2接受user1为朋友,那么这种友谊就是双向友谊。

我正在考虑处理这件事: 1)我将创建一个友谊表。 2)维护用户的关系列是关注者/朋友。 3)如果用户是朋友,那么我将创建两个条目以保持两端的朋友关系。

请你建议我处理这种情况的最佳方法(gems / plugin)。

3 个答案:

答案 0 :(得分:1)

您应该与以下字段建立友谊

1] user_id
2] friend_id 
3] status

用户首次发送友情请求status时必须Pending,当朋友accept/reject请求时,应将其更改为Accepted/Rejected

答案 1 :(得分:0)

您可以创建一个包含列的表 - USER_A,USER_B,RELATION。现在,您可以创建常量或枚举来定义USER_A和USER_B之间的关系。对于例如0表示无关系,1表示USER_A - > USER_B(用户A跟随用户B),2代表USER_B - > USER_A(用户B跟随用户A),3表示USER_A< - > USER_B(这意味着两种方式。) 如果不需要历史记录,则可以更新同一行,否则可以在关系更改时再添加一行。 希望有用!

答案 2 :(得分:0)

您可以查看socialization gem,为您的ActiveRecord模型提供喜欢,关注和提及。