2013-06-07 8 views
8

w Rails 3.2 mam tej składni:Szyny 4 validate wyjątkowość z zakresu hash przestarzałe

validates_uniqueness_of :sport_name, :scope => :sports_org_id 

ta jest obecnie przestarzałe w szynach 4, ale nie mogę wymyślić nową składnię. Chcę zweryfikować zarówno obecność, jak i unikalność pola danych.

+0

Nowa składnia jest w dokumentacji krawędzi: http: // edgeguides .rubyonrails.org/active_record_validations.html # unikalność –

Odpowiedz

19

co z tym?

validates :sport_name, uniqueness: {scope: :sports_org_id}, presence: true 

Aby uzyskać więcej informacji, patrz The Rails Guides. Twoja składnia pochodzi z szyn 2!

EDIT

Teraz można również skorzystać z opcji allow_blank zamiast sprawdzania obecności, co sprawia, że ​​dla ładniejszych komunikaty o błędach:

validates :sport_name, uniqueness: {scope: :sports_org_id, allow_blank: false}