# Allow\_nil per validates\_numericality\_of funziona?

**URL:** <https://www.ruby-forum.com/t/allow-nil-per-validates-numericality-of-funziona/208458>\
**Category:** IT\
**Created:** [June 19, 2011, 12:56am UTC](https://www.ruby-forum.com/t/allow-nil-per-validates-numericality-of-funziona/208458 "2011-06-19T00:56:11Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![dubstep](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/cdc98d/32.png) [@dubstep](https://www.ruby-forum.com/u/dubstep)\
**Post date:** [June 19, 2011, 12:56am UTC](https://www.ruby-forum.com/t/allow-nil-per-validates-numericality-of-funziona/208458/1 "2011-06-19T00:56:11Z")

</div>

Nel modello ho:

validates :square\_meters\_public\_land, :barrier\_meters, :numericality  
=\> { :greater\_than\_or\_equal\_to =\> 0 }, :allow\_nil =\> true

ciononostante se non inserisco nessun valore nei due campi di dice che  
il valore immesso non e’ un numero.

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [June 19, 2011, 10:28am UTC](https://www.ruby-forum.com/t/allow-nil-per-validates-numericality-of-funziona/208458/2 "2011-06-19T10:28:06Z")

</div>

nil == 0 # =\> false

quindi non un numero

A.

Il 19/06/2011 00:55, Mauro ha scritto:

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [June 19, 2011, 1:14pm UTC](https://www.ruby-forum.com/t/allow-nil-per-validates-numericality-of-funziona/208458/3 "2011-06-19T13:14:42Z")

</div>

2011/6/19 Andrea P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> nil == 0 # =\> false
> 
> quindi non un numero

Si ma se c’e’ allow\_nil =\> true?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [June 20, 2011, 10:49am UTC](https://www.ruby-forum.com/t/allow-nil-per-validates-numericality-of-funziona/208458/4 "2011-06-20T10:49:12Z")

</div>

al massimo puoi usare un

validates\_numericality\_of :qualcosa,  
:unless =\> Proc.new {|record| record.tuo\_campo.nil? }

stando alla documentazione, allow\_nil si pu usare e salta la validazione  
in  
caso il campo sia nil, a questo punto equivale a quanto ho scritto  
sopra.

[http://ar.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html#M000091](http://ar.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html#M000091)

[…] :allow\_nil - Skip validation if attribute is nil (default is  
false).  
Notice that for fixnum and float columns empty strings are converted to  
nil. […]

btw, prova a metterti daccordo con il tuo alter-ego, sembra abbia  
problemi anche  
lui 😃  
[https://www.ruby-forum.com/topic/1961499](https://www.ruby-forum.com/topic/1961499)

A.

Il 19/06/2011 13:14, Mauro ha scritto:
