我細讀Ruby on Rails Guides article on ActiveRecord validations,我碰到這個整潔的摘錄出來有關uniqueness
驗證:如何在Rails中爲ActiveRecord模型添加自定義唯一性驗證?
還有一個:你可以用它來定義唯一性約束是否區分大小寫或不CASE_SENSITIVE選項。該選項默認爲true。
這是一個非常有用的功能,可以確保兩個用戶無法使用相同的用戶名或電子郵件進行註冊,例如。但是,我想使用類似的驗證,但使用不同的方法來確定字符串的平等。我想確保我的所有條目在squeeze
下都是唯一的。
作爲一個例子,說我的Post
模型有一個文本屬性content
。我想確保如果foo bar
已經在數據庫中,它將不會接受foo bar
或foo bar
。有沒有更好的方法來做這件事,而不僅僅是添加一個自定義驗證來遍歷每個條目的Post.all
,squeeze
,並將其與squeeze
d content
進行比較?我無法想象這個比例很好。