Module: Pacecar::Helpers::ClassMethods

Defined in:
lib/pacecar/helpers.rb

Instance Method Summary collapse

Instance Method Details

#boolean_column_namesObject



32
33
34
# File 'lib/pacecar/helpers.rb', line 32

def boolean_column_names
  column_names_for_type :boolean
end

#column_names_for_type(*types) ⇒ Object



24
25
26
# File 'lib/pacecar/helpers.rb', line 24

def column_names_for_type(*types)
  safe_columns.select { |column| types.include? column.type }.collect(&:name)
end

#column_names_without_type(*types) ⇒ Object



28
29
30
# File 'lib/pacecar/helpers.rb', line 28

def column_names_without_type(*types)
  safe_columns.select { |column| ! types.include? column.type }.collect(&:name)
end

#datetime_column_namesObject



36
37
38
# File 'lib/pacecar/helpers.rb', line 36

def datetime_column_names
  column_names_for_type :datetime, :date
end

#non_state_text_and_string_columnsObject



44
45
46
# File 'lib/pacecar/helpers.rb', line 44

def non_state_text_and_string_columns
  text_and_string_column_names.reject { |name| name =~ Pacecar::Helpers.options[:state_pattern] }
end

#safe_columnsObject



16
17
18
19
20
21
22
# File 'lib/pacecar/helpers.rb', line 16

def safe_columns
  begin
    columns
  rescue ActiveRecord::StatementInvalid # If the table does not exist
    Array.new
  end
end

#text_and_string_column_namesObject



40
41
42
# File 'lib/pacecar/helpers.rb', line 40

def text_and_string_column_names
  column_names_for_type :text, :string
end