instance method
configs_for
Ruby on Rails 8.1.2
Since v6.0.6Signature
configs_for(env_name: nil, name: nil, config_key: nil, include_hidden: false)
Collects the configs for the environment and optionally the specification name passed in. To include replica configurations pass include_hidden: true.
If a name is provided a single DatabaseConfig object will be returned, otherwise an array of DatabaseConfig objects will be returned that corresponds with the environment and type requested.
Options
-
env_name:The environment name. Defaults tonilwhich will collect configs for all environments. -
name:The db config name (i.e. primary, animals, etc.). Defaults tonil. If noenv_nameis specified the config for the default env and the passednamewill be returned. -
config_key:Selects configs that contain a particular key in the configuration hash. Useful for selecting configs that use a custom db config handler or finding configs with hashes that contain a particular key. -
include_hidden:Determines whether to include replicas and configurations hidden bydatabase_tasks: falsein the returned list. Most of the time we’re only iterating over the primary connections (i.e. migrations don’t need to run for the write and read connection). Defaults tofalse.
Parameters
-
env_namekey = nil -
namekey = nil -
config_keykey = nil -
include_hiddenkey = false
Source
# File activerecord/lib/active_record/database_configurations.rb, line 100
def configs_for(env_name: nil, name: nil, config_key: nil, include_hidden: false)
env_name ||= default_env if name
configs = env_with_configs(env_name)
unless include_hidden
configs = configs.select do |db_config|
db_config.database_tasks?
end
end
if config_key
configs = configs.select do |db_config|
db_config.configuration_hash.key?(config_key)
end
end
if name
configs.find do |db_config|
db_config.name == name.to_s
end
else
configs
end
end
Defined in activerecord/lib/active_record/database_configurations.rb line 100
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::DatabaseConfigurations