On Aug 14, 2011, at 4:42 PM, Rafael Ubaldo wrote:
It matches because it's true. The expressions states any number of
digits before the end of line. It does not state exclusively digits.
That wasn't what I got from it on Rubular. The ^ and $ surrounding the
\d* mean the entire line is considered, and if you type in the precise
regexp on rubular.com, and then type in 123f in the test string box,
you'll see that it matches 1,12,123, and then reports "no match" the
moment you type the f.
Walter
On Aug 14, 2011, at 12:19 PM, Walter Lee Davis wrote:
On Aug 14, 2011, at 2:29 PM, Misha Ognev wrote:
Hi! This problem(in model):
validates :some_digits_collection, :presence => true, :format =>
{ :with
=> /^\d*$/, :message => "Must contain only digits!" }
So, :some_digits_collection must match only digits. But when I puts
"123f"(for example) in my form, it matches too and there no
errors! Why?
That's really curious. I tested your regexp at Rubular, and it
really does match and work the way you want it to. What gets stored
in the database after this passes? Perhaps the input value is being
cast to an integer for storage, and so the trailing letters are
being stripped out. IF the validation happens after the cast, that
could explain it -- but only if the value that ends up being stored
is actually free of letters.
Walter
--
You received this message because you are subscribed to the Google
Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com
.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com
.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
.
--
You received this message because you are subscribed to the Google
Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-
t...@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com
.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
.
--
You received this message because you are subscribed to the Google Groups "Ruby on
Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.