640a495649fc82a32b4db508a5a02a74323c89d2
[rails.git] / lib / validators.rb
1 module ActiveRecord
2   module Validations
3     module ClassMethods
4       
5       # error message when invalid UTF-8 is detected
6       @@invalid_utf8_message = " is invalid UTF-8"
7
8       ##
9       # validation method to be included like any other validations methods
10       # in the models definitions. this one checks that the named attribute
11       # is a valid UTF-8 format string.
12       def validates_as_utf8(*attrs)
13         validates_each(attrs) do |record, attr, value|
14           record.errors.add(attr, @@invalid_utf8_message) unless UTF8.valid? value
15         end
16       end    
17
18     end
19   end
20 end