2011-10-04 22 views
10

Sử dụng: Rails 3.0.3.Đường ray: validates_length_of: allow_nil không cho phép nil

Tôi đang sử dụng mã này trong các validator:

validates_length_of :birth_date_8, :minimum => 8, :allow_nil => true, :message => "value_is_not_a_proper_date", :if =>:family_birthday? 

Nó không, tuy nhiên, cho phép lĩnh vực này là con số không. Tôi đã kiểm tra vì vậy nó không phải là một vấn đề của :if => :family_birthday? đó là điều rối tung lên.

Có vấn đề gì với mã không?

+1

Hãy thử allow_blank thay vì allow_nil - và nếu điều đó không giúp đỡ, tôi sẽ sử dụng validates_format và phù hợp với một regex - một số kiểm chứng thực ray đơn giản là không chấp nhận allow_nil và nó không được ghi lại một cách khủng khiếp – chrispanda

+0

Cảm ơn. Allow_nil đã làm thủ thuật. Viết như là một câu trả lời và tôi có thể cung cấp cho bạn tín dụng cho nó! – Christoffer

+0

vui mừng được giúp đỡ – chrispanda

Trả lời

22

Hãy thử allow_blank thay vì allow_nil :-)

+1

Thực tiễn tốt là thêm các dấu tích xung quanh các từ "ngôn ngữ" (khóa). Tôi đã chỉnh sửa chúng cho bạn. – Romain

+0

cảm ơn bạn - đã bỏ lỡ điều đó – chrispanda

Các vấn đề liên quan