aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/application/configuration.rb
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@plataformatec.com.br>2013-03-02 13:52:32 -0700
committerJosé Valim <jose.valim@plataformatec.com.br>2013-03-02 13:52:32 -0700
commitdd5a80dc3da794f9296ec199c492a398589257a0 (patch)
treed4a667acef6652dda40a117628120ac9f789192f /railties/lib/rails/application/configuration.rb
parentc09f934dcb2d02763777e7fd025cdc33bc8ec8bb (diff)
downloadrails-dd5a80dc3da794f9296ec199c492a398589257a0.tar.gz
rails-dd5a80dc3da794f9296ec199c492a398589257a0.tar.bz2
rails-dd5a80dc3da794f9296ec199c492a398589257a0.zip
Remove hard coded references to Active Record in railties
Diffstat (limited to 'railties/lib/rails/application/configuration.rb')
-rw-r--r--railties/lib/rails/application/configuration.rb13
1 files changed, 7 insertions, 6 deletions
diff --git a/railties/lib/rails/application/configuration.rb b/railties/lib/rails/application/configuration.rb
index 17763b39c5..8abd2dc572 100644
--- a/railties/lib/rails/application/configuration.rb
+++ b/railties/lib/rails/application/configuration.rb
@@ -98,14 +98,15 @@ module Rails
end
# Loads and returns the configuration of the database.
- # First, looks at If ENV['DATABASE_URL'] if it's not present it uses the #paths["config/database"]
- # The contents of the file are processed via ERB before being sent through YAML::load.
def database_configuration
- if ENV['DATABASE_URL']
- {Rails.env => ActiveRecord::ConnectionAdapters::ConnectionSpecification::Resolver.connection_url_to_hash(ENV['DATABASE_URL']).stringify_keys}
+ yaml = paths["config/database"].first
+ if File.exists?(yaml)
+ require "erb"
+ YAML.load ERB.new(IO.read(yaml)).result
+ elsif ENV['DATABASE_URL']
+ nil
else
- require 'erb'
- YAML.load ERB.new(IO.read(paths["config/database"].first)).result
+ raise "Could not load database configuration. No such file - #{yaml}"
end
rescue Psych::SyntaxError => e
raise "YAML syntax error occurred while parsing #{paths["config/database"].first}. " \