class ActiveRecord::DatabaseConfigurations::ConnectionUrlResolver
def initialize(url)
timeout: "3000"
pool: "5",
password: "bar",
username: "foo",
database: "foo_test",
port: 9000,
host: "localhost",
adapter: "postgresql",
# => {
ConnectionUrlResolver.new(url).to_hash
url = "postgresql://foo:bar@localhost:9000/foo_test?pool=5&timeout=3000"
== Example
:nodoc:
Expands a connection string into a hash.
def initialize(url) raise "Database URL cannot be empty" if url.blank? @uri = uri_parser.parse(url) @adapter = @uri.scheme && @uri.scheme.tr("-", "_") @adapter = "postgresql" if @adapter == "postgres" if @uri.opaque @uri.opaque, @query = @uri.opaque.split("?", 2) else @query = @uri.query end end