2015-11-13 57 views
0

我知道,要防止這種情況發生:如何驗證軌道中兩列中的唯一標識符?

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

回答

2

這應該有效。你確保friend_id不能等於user_id

validates :friend_id, exclusion: {in: ->(u) { [u.user_id] }} 
+1

謝謝你,我已經測試過它,並且奇妙地工作。 – Zero