1
我創建了ROR一個支架,以包含元素之間的一些關係獨特的對稱雙驗證
+----------------------+
| left | right | score |
+----------------------+
所以,如果我有一個入口a, b, 10
,這意味着從a
到b
的關係是10,但作爲左,右,代表了同一種實體的fk's
,我們可以得出結論,從b
到a
的關係也是10
做這樣的事情validates_uniqueness_of :left, :scope => [:right]
不會阻止對從表中出現的恢復,像這樣:b, a, 10
我想是這樣的:
validates_uniqueness_of :left, :scope => [:right]
validates_uniqueness_of :right, :scope => [:left]
可以做的伎倆,但有清潔劑或驗證對對稱的獨特性更合適的方法?
一旦這個答案,工作差不多完成了。
如何防止在兩列上出現相同的值?
例如。這樣的條目不應該被允許:a, a, 15
感謝您的考慮。
可能的複製[您如何驗證在Ruby中對IDS on Rails的唯一性?(http://stackoverflow.com/questions/923796/如何做,你驗證唯一性的一對紅寶石在軌道上) – infused
@infused我沒有看到什麼是在dup目標這是不是在問題中。此外,它不處理左右交換。 –