lib/sequel_rails/configuration.rb in sequel-rails-0.9.2 vs lib/sequel_rails/configuration.rb in sequel-rails-0.9.3
- old
+ new
@@ -89,10 +89,14 @@
# override max connections if requested in app configuration
config['max_connections'] ||= config['pool']
config['max_connections'] = max_connections if max_connections
config['search_path'] = search_path if search_path
+ # Allow to set the URL from environment directly
+ url = ENV['DATABASE_URL']
+ config['url'] ||= url if url
+
# some adapters only support an url
if config['adapter'] && config['adapter'] =~ /^(jdbc|do):/ && !config.key?('url')
params = {}
config.each do |k, v|
next if %w(adapter host port database).include?(k)
@@ -104,12 +108,12 @@
end
params_str = params.map { |k, v| "#{k}=#{v}" }.join('&')
port = config['port'] ? ":#{config['port']}" : ''
config['url'] ||=
if config['adapter'].include?('sqlite')
- sprintf('%s:%s', config['adapter'], config['database'])
+ format('%s:%s', config['adapter'], config['database'])
else
- sprintf('%s://%s%s/%s?%s', config['adapter'], config['host'], port, config['database'], params_str)
+ format('%s://%s%s/%s?%s', config['adapter'], config['host'], port, config['database'], params_str)
end
end
config
end