【发布时间】:2014-03-25 23:30:36
【问题描述】:
我有一个用户表和一个友谊表 用户(ID、电子邮件、姓名) 友谊(id,user_id,friend_id,确认)
id | email | name
1 | xyz | abc
2 | yui | poi
3 | tar | foo
4 | bar | baz
如果 id 为 1 的用户向 id 为 2 的用户发送好友请求,那么与 id 为好友的行看起来像
id | user_id | friend_id | confirmed
1(generated key) | 1 | 2 | false
现在当用户接受好友请求时
id | user_id | friend_id | confirmed
1(generated key) | 1 | 2 | true
2 | 2 | 1 | true
所以我基本上想要做的是找出与当前用户不是朋友的用户,如果用户已经与用户成为朋友或者用户已经发送了好友请求,那么生成的哈希数组不应该包含该值.
所以在上述数据库中,哈希结果数组应该包含 id 为 3 和 4 的用户。
所以基本上在友谊表中 user_id 为好友请求发送者 ID,好友 ID 为接收者 ID
因此,无论 user_id 是 current_user,它都不应该有与该friend_id 对应的用户,反之亦然,如果friend_id 是当前用户,则它不应该显示具有相应 user_id 的用户
我希望问题足够清楚,可以理解
抱歉英语不好
【问题讨论】:
标签: mysql ruby-on-rails-3 activerecord model