我知道要防止这种情况发生:
user_id:10 | friend_id:20
user_id:10 | friend_id:20
您可以使用
validates :user_id, uniqueness: {scope: :friend_id}
但是如果你想阻止用户将自己添加为他自己的朋友呢?
user_id:10 | friend_id:10
答案 0 :(得分:2)
这应该有效。您确保friend_id不等于user_id
validates :friend_id, exclusion: {in: ->(u) { [u.user_id] }}