I''ve been working on extending AR validations with some custom methods with the goals to: a) reduce the bulk the standard syntax can result in b) avoid having to write and read regex for common white-listed character sets c) allow some UTF-8 characters d) provide a mechanism for making dynamic error messages I''ve written a detailed article how I did it, and I''ve posted the source I generated to be used or just looked at as an example. Thanks to everyone that answered the questions that got me to this point. http://www.railsdev.ws/blog/11/custom-validations-in-rails/ I reduced this application code (which does not allow for UTF-8 chars): validates_format_of :userFltrName, :with => /^[a-zA-Z0-9\_\-\ ]*?$/, :message => ''accepts only letters, 0-9, underscore, hyphen, and space'' validates_format_of :userFltrTable, :with => /^[a-zA-Z0-9\_]*?$/, :message => ''accepts only letters, 0-9, and underscore'' validates_format_of :userFltrField, :with => /^[a-zA-Z0-9\_]*?$/, :message => ''accepts only letters, 0-9, and underscore'' validates_inclusion_of :userFltrOp, :in => %w{eq bw ew cn lte lt gte gt btw}, :message => ''has a value other than the valid options below'' down to the following replacement (which does allow UTF-8 chars): validates_as_alpha_numeric_separator :userFltrName validates_as_alpha_numeric_underscore :userFltrTable, :userFltrField validates_as_value_list :userFltrOp, :in => %w{eq bw ew cn lte lt gte gt btw} So far, I have validators for: validates_as_person_name validates_as_business_name validates_as_street_address validates_as_alpha validates_as_alpha_space validates_as_alpha_hyphen validates_as_alpha_underscore validates_as_alpha_symbol validates_as_alpha_separator validates_as_alpha_numeric validates_as_alpha_numeric_space validates_as_alpha_numeric_hyphen validates_as_alpha_numeric_underscore validates_as_alpha_numeric_symbol validates_as_alpha_numeric_separator validates_as_numeric validates_as_decimal validates_as_positive_decimal validates_as_integer validates_as_positive_integer validates_as_email validates_as_value_list -- def gw acts_as_n00b writes_at(www.railsdev.ws) end --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---