Je viens de commencer à apprendre Ruby et Ruby on Rails et suis tombé sur un code de validation qui utilise des plages:
validates_inclusion_of :age, :in => 21..99
validates_exclusion_of :age, :in => 0...21, :message => "Sorry, you must be over 21"
Au début, je pensais que la différence résidait dans l'inclusion des points de terminaison, mais dans les documents sur l'API que j'ai examinés, peu importe que ce soit le cas ..
ou ...
: cela incluait toujours les points de terminaison.
Cependant, j'ai fait quelques tests dans irb et cela semblait indiquer que cela ..
inclut les deux points de terminaison, tout en n'incluant ...
que la limite inférieure mais pas la limite supérieure. Est-ce correct?
(1..10).include? 10 #=> true
et(1...10).include? 10 #=> false