module ActiveRecord::Blanks

Constants

VERSION

Public Class Methods

prepended(base) click to toggle source
# File lib/active_record/blanks.rb, line 52
def self.prepended(base)
        base.before_validation :convert_blanks
end

Public Instance Methods

blank_columns() { |column| ... } click to toggle source
# File lib/active_record/blanks.rb, line 25
def blank_columns
        return to_enum(:blank_columns) unless block_given?
        
        self.class.columns.each do |column|
                if column.null
                        yield column
                end
        end
end
convert_blanks(to = nil) click to toggle source
# File lib/active_record/blanks.rb, line 35
def convert_blanks(to = nil)
        blank_columns do |column|
                value = read_attribute(column.name)
                
                next unless value.is_a?(String)
                
                # Strip leading and trailing whitespace:
                value = value.strip
                
                if value.blank?
                        write_attribute(column.name, to)
                else
                        write_attribute(column.name, value)
                end
        end
end