2011-06-07 145 views
7

嘿我有一個has_one酒吧模型foo。酒吧belongs_to foo。我想知道是否有一種方法來增強has_one,使得沒有兩個酒吧可以屬於同一個foo。我查看了has_one的文檔,看起來好像沒有:我被允許指定的uniq參數。那麼,我必須創建一個自定義驗證來實現此目的嗎?還是有更簡單的方法?ruby​​ on rails has_one協會與獨特

謝謝。

回答

0

我想你應該寫自己的驗證,因爲富的兩個不同的記錄有沒有對他人的相關記錄(酒吧)

+0

Irrelevent。如果他不希望兩個Foo擁有相同的Bar,那將會是一個擔憂。但這不是他所問的。 – elc 2012-05-03 16:46:55

14

你並不需要一個自定義的驗證,只是強制欄的唯一性對於任何給定foo的想法

class Bar < ActiveRecord::Base 
    validates_uniqueness_of :foo_id 
end 
+0

這將確保沒有兩個foos具有相同的條,但@dhruvg正在確保沒有兩個條屬於* same * foo。 – 2015-12-30 05:03:10