Mam następujący model walidacji polu:Walidacja w celu zapewnienia wyjątkowości, ale ignorowanie pustych wartości?
validates_uniqueness_of :acronym, :scope => [:group_id], :case_sensitive => false
Problem polega na tym, że to pole jest opcjonalne, a pusty/wartość nil powraca jako skrótem już podjęte. Chcę tylko sprawdzić, czy akronim jest unikatowy, jeśli podano wartość. Czy istnieje sposób aktualizacji tego sprawdzania poprawności, aby miało miejsce tylko wtedy, gdy istnieje rzeczywistej wartości .. nie nil/pusty?
Dzięki
Wielkie dzięki! Mój kod jest dużo bardziej wszechstronny. Inne odpowiedzi sugerują użycie: chyba lub: jeśli, ale myślę, że to jest najlepszy sposób. Masz problem z wypuszczaniem: group_id z tablicy? –
Specyfikacja dla tego to 'it {is_expected.to validate_uniqueness_of (: acronym) .scoped_to (: group_id) .case_insensitive.allow_blank}' –