module Algernon::TableMaker

Public Instance Methods

auto_increment(value) click to toggle source
# File lib/algernon/model/table_maker.rb, line 22
def auto_increment(value)
  "AUTOINCREMENT" if value
end
default(value) click to toggle source
# File lib/algernon/model/table_maker.rb, line 35
def default(value)
  "DEFAULT `#{value}`"
end
fields_builder(fields) click to toggle source
# File lib/algernon/model/table_maker.rb, line 3
def fields_builder(fields)
  columns_definition = ""
  fields.each do |field, constraints|
    columns_definition += field.to_s

    constraints.each do |constraint_type, value|
      columns_definition += " "
      columns_definition += send(constraint_type, value)
    end
    columns_definition += ","
  end
  columns_definition[0..-2]
end
nullable(value) click to toggle source
# File lib/algernon/model/table_maker.rb, line 30
def nullable(value)
  return "NOT NULL" unless value
  "NULL"
end
primary_key(value) click to toggle source
# File lib/algernon/model/table_maker.rb, line 17
def primary_key(value)
  return "PRIMARY KEY" if value
  ""
end
type(value) click to toggle source
# File lib/algernon/model/table_maker.rb, line 26
def type(value)
  value.to_s.upcase
end