24
私は、次のモデルフィールドの検証を持っている:空の値を無視して一意性を保証するための検証?
validates_uniqueness_of :acronym, :scope => [:group_id], :case_sensitive => false
問題は、このフィールドはオプションであることで、空/ nilの値が既に取ら頭字語であるとして戻っています。私は値が提供されている頭字語がユニークであることを検証したいだけです..もし実際の値があればこの検証を更新する方法はありますか?
おかげ
ありがとうございます!私のコードはより包括的になっています。他の答えは、を使って示唆されています:unlessまたは:if、しかし私はこれが最善の方法だと思います。 group_idを配列から解放する際の問題はありますか? –
この仕様は 'it {is_expected.to validate_uniqueness_of(:略語).scoped_to(:group_id).case_insensitive.allow_blank}'です。 –