Class: ActiveRecord::DatabaseConfigurations::UrlConfig
- Inherits:
 - 
      DatabaseConfig
      
        
- Object
 - DatabaseConfig
 - ActiveRecord::DatabaseConfigurations::UrlConfig
 
 
- Defined in:
 - lib/active_record/database_configurations/url_config.rb
 
Overview
A UrlConfig object is created for each database configuration entry that is created from a URL. This can either be a URL string or a hash with a URL in place of the config hash.
A URL config:
postgres://localhost/foo
Becomes:
#<ActiveRecord::DatabaseConfigurations::UrlConfig:0x00007fdc3238f340
  @env_name="default_env", @spec_name="primary",
  @config={"adapter"=>"postgresql", "database"=>"foo", "host"=>"localhost"},
  @url="postgres://localhost/foo">
Options
- 
:env_name- The Rails environment, ie “development”. - 
:spec_name- The specification name. In a standard two-tier database configuration this will default to “primary”. In a multiple database three-tier database configuration this corresponds to the name used in the second tier, for example “primary_readonly”. - 
:url- The database URL. - 
:config- The config hash. This is the hash that contains the database adapter, name, and other important information for database connections. 
Instance Attribute Summary collapse
- 
  
    
      #config  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute config.
 - 
  
    
      #url  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute url.
 
Attributes inherited from DatabaseConfig
Instance Method Summary collapse
- 
  
    
      #initialize(env_name, spec_name, url, config = {})  ⇒ UrlConfig 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of UrlConfig.
 - 
  
    
      #migrations_paths  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
The migrations paths for a database configuration.
 - 
  
    
      #replica?  ⇒ Boolean 
    
    
  
  
  
  
  
  
  
  
  
    
Determines whether a database configuration is for a replica / readonly connection.
 - 
  
    
      #url_config?  ⇒ Boolean 
    
    
  
  
  
  
  
  
  
  
  
    
:nodoc:.
 
Methods inherited from DatabaseConfig
#for_current_env?, #to_legacy_hash
Constructor Details
#initialize(env_name, spec_name, url, config = {}) ⇒ UrlConfig
Returns a new instance of UrlConfig.
      34 35 36 37 38  | 
    
      # File 'lib/active_record/database_configurations/url_config.rb', line 34 def initialize(env_name, spec_name, url, config = {}) super(env_name, spec_name) @config = build_config(config, url) @url = url end  | 
  
Instance Attribute Details
#config ⇒ Object (readonly)
Returns the value of attribute config.
      32 33 34  | 
    
      # File 'lib/active_record/database_configurations/url_config.rb', line 32 def config @config end  | 
  
#url ⇒ Object (readonly)
Returns the value of attribute url.
      32 33 34  | 
    
      # File 'lib/active_record/database_configurations/url_config.rb', line 32 def url @url end  | 
  
Instance Method Details
#migrations_paths ⇒ Object
The migrations paths for a database configuration. If the migrations_paths key is present in the config, migrations_paths will return its value.
      54 55 56  | 
    
      # File 'lib/active_record/database_configurations/url_config.rb', line 54 def migrations_paths config["migrations_paths"] end  | 
  
#replica? ⇒ Boolean
Determines whether a database configuration is for a replica / readonly connection. If the replica key is present in the config, replica? will return true.
      47 48 49  | 
    
      # File 'lib/active_record/database_configurations/url_config.rb', line 47 def replica? config["replica"] end  | 
  
#url_config? ⇒ Boolean
:nodoc:
      40 41 42  | 
    
      # File 'lib/active_record/database_configurations/url_config.rb', line 40 def url_config? # :nodoc: true end  |