Module: AutoValidations::ClassMethods

Defined in:
lib/auto_validations.rb

Instance Method Summary collapse

Instance Method Details

#auto_length_validation(options = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/auto_validations.rb', line 9

def auto_length_validation(options = {})
  options[:except] = Array.wrap(options[:except])
  options[:except].map!(&:to_s)

  options.reverse_merge! :ignore_types => [:boolean, :datetime] 

  columns.each do |column|

    next if options[:except].include?(column.name)
    next if options[:ignore_types].include?(column.type)

    validates_length_of column.name, :maximum => column.limit, :allow_blank => true if column.limit
  end
end