class Djoini::Connection

Class to manage db connetion to postgres

Attributes

db[RW]

Public Class Methods

load_database(db_name = 'postgres') click to toggle source
# File lib/djoini/connection.rb, line 30
def self.load_database(db_name = 'postgres')
  _db_config_path = File.join(Dir.pwd, '/config/database.yml')

  fail unless File.file?(_db_config_path)

  _conn_config = YAML.load(File.read(_db_config_path))
  Djoini::Connection.instance.establish_connection(_conn_config[db_name])
end

Public Instance Methods

conn() click to toggle source
# File lib/djoini/connection.rb, line 15
def conn
  db || load_database
end
establish_connection(params) click to toggle source
# File lib/djoini/connection.rb, line 19
def establish_connection(params)
  _adapter = params.fetch('adapter', 'postgres')
  _username = params.fetch('username')
  _password = params.fetch('password', '')
  _host = params.fetch('host', 'localhost')
  _port = params.fetch('port', '5432')
  _db_name = params.fetch('db_name')

  self.db = PG.connect("#{_adapter}://#{_username}:#{_password}@#{_host}:#{_port}/#{_db_name}")
end